Python 16

[Python] 백준 1546(평균)

백준 1546(평균) https://www.acmicpc.net/problem/1546 1546번: 평균 첫째 줄에 시험 본 과목의 개수 N이 주어진다. 이 값은 1000보다 작거나 같다. 둘째 줄에 세준이의 현재 성적이 주어진다. 이 값은 100보다 작거나 같은 음이 아닌 정수이고, 적어도 하나의 값은 0보 www.acmicpc.net 코드설명 1 2 3 4 5 6 7 8 9 10 11 12 num = int(input()) score = list(map(int, input().split())) max_score = max(score) new_score = [] for i in score: i = i/max_score*100 new_score.append(i) avg = sum(new_score)/nu..

Python 2021.08.31

[Python] 백준 2839(설탕 배달)

백준 2839(설탕 배달) https://www.acmicpc.net/problem/2839 2839번: 설탕 배달 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그 www.acmicpc.net 코드설명 1 2 3 4 5 6 7 8 9 10 11 12 13 sugar = int(input()) bag = 0 while True: if sugar % 5 == 0: bag += sugar // 5 print(bag) break sugar -= 3 bag += 1 if sugar

Python 2021.08.02

[Python] 백준 1157(단어 공부)

백준 1157(단어 공부) https://www.acmicpc.net/problem/1157 1157번: 단어 공부 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. www.acmicpc.net 코드설명 1 2 3 4 5 6 7 8 9 10 11 12 13 words = input().upper() unique_words = list(set(words)) cnt_list = [] for i in unique_words: cnt = words.count(i) cnt_list.append(cnt) if cnt_list.count(max(cnt_list)) > 1: print('?') else: ma..

Python 2021.08.02

[Python] 백준 8958(OX퀴즈)

백준 8958(OX퀴즈) https://www.acmicpc.net/problem/8958 8958번: OX퀴즈 "OOXXOXXOOO"와 같은 OX퀴즈의 결과가 있다. O는 문제를 맞은 것이고, X는 문제를 틀린 것이다. 문제를 맞은 경우 그 문제의 점수는 그 문제까지 연속된 O의 개수가 된다. 예를 들어, 10번 문제의 점수 www.acmicpc.net 코드설명 1 2 3 4 5 6 7 8 9 10 11 12 13 n = int(input()) for _ in range(n): quiz = list(input()) score = 0 sum_score = 0 for ox in quiz: if ox == 'o': score = score+1 sum_score = sum_score+score else: sc..

Python 2021.07.29

[Python] 백준 4344(평균은 넘겠지)

백준 4344(평균은 넘겠지) https://www.acmicpc.net/problem/4344 4344번: 평균은 넘겠지 대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다. www.acmicpc.net 코드설명 1 2 3 4 5 6 7 8 9 10 11 12 13 import numpy as np n = int(input()) for _ in range(n): nums = list(map(int, input().split())) avg = np.mean(nums[1:]) cnt = 0 for score in nums[1:]: if score > avg: cnt += 1 rate = cnt/nums[0]*100 print(round(rate,3..

Python 2021.07.29

[Python] 백준 1110(더하기 사이클)

백준 1110(더하기 사이클) https://www.acmicpc.net/problem/1110 1110번: 더하기 사이클 0보다 크거나 같고, 99보다 작거나 같은 정수가 주어질 때 다음과 같은 연산을 할 수 있다. 먼저 주어진 수가 10보다 작다면 앞에 0을 붙여 두 자리 수로 만들고, 각 자리의 숫자를 더한다. 그 다음, www.acmicpc.net 코드설명 1 2 3 4 5 6 7 8 9 10 11 12 input_num = int(input()) num = input_num new_num = 100 cnt = 0 while new_num!=input_num: sum_num = (num//10)+(num%10) new_num = (num%10)*10+(sum_num%10) num = new_num..

Python 2021.07.25

[Python] 백준 5543(상근날드)

백준 5543(상근날드) https://www.acmicpc.net/problem/5543 5543번: 상근날드 입력은 총 다섯 줄이다. 첫째 줄에는 상덕버거, 둘째 줄에는 중덕버거, 셋째 줄에는 하덕버거의 가격이 주어진다. 넷째 줄에는 콜라의 가격, 다섯째 줄에는 사이다의 가격이 주어진다. 모든 가 www.acmicpc.net 코드설명 1 2 3 4 5 6 7 8 9 10 11 burger = [] drink = [] for _ in range(3): burger.append(int(input())) for _ in range(2): drink.append(int(input())) cost = min(burger) + min(drink) - 50 print(cost) cs burger와 drink의 가..

Python 2021.07.25