본문 바로가기

Python

(27)
[Python] 백준 8958: OX퀴즈 https://www.acmicpc.net/problem/8958 8958번: OX퀴즈 "OOXXOXXOOO"와 같은 OX퀴즈의 결과가 있다. O는 문제를 맞은 것이고, X는 문제를 틀린 것이다. 문제를 맞은 경우 그 문제의 점수는 그 문제까지 연속된 O의 개수가 된다. 예를 들어, 10번 문제의 점수 www.acmicpc.net n = int(input()) for i in range(n): a = input() b = list(a) sum = 0 count = 0 for i in b: if i == 'O': count += 1 sum += count else: count = 0 print(sum) 코드 해석 입력 받을 개수를 정한 뒤 for 문을 통해 그 횟수만큼 반복을 시킨다 a 에서 OX를 입력 ..
[Python] 백준 1546: 평균 https://www.acmicpc.net/problem/1546 1546번: 평균 첫째 줄에 시험 본 과목의 개수 N이 주어진다. 이 값은 1000보다 작거나 같다. 둘째 줄에 세준이의 현재 성적이 주어진다. 이 값은 100보다 작거나 같은 음이 아닌 정수이고, 적어도 하나의 값은 0보 www.acmicpc.net n = int(input()) list = list(map(int,input().split())) max = max(list) new_list = [] for i in list: new_list.append(i/max*100) avg = sum(new_list)/n print(avg) 코드 해석 가장 높은 점수를 찾기 n = int(input()) list = list(map(int,inpu..
[Python] 백준 3052: 나머지 https://www.acmicpc.net/problem/3052 3052번: 나머지 각 수를 42로 나눈 나머지는 39, 40, 41, 0, 1, 2, 40, 41, 0, 1이다. 서로 다른 값은 6개가 있다. www.acmicpc.net array = [] for i in range(10): n = int(input()) array.append(n % 42) arr = set(array) print(len(arr)) 코드 해석 먼저, 빈 배열을 준비한다. 이후 입력받는 값들에 대해서 42로 나눈 값들을 array에 저장 이후 set을 이용하여 중복을 제거한 뒤, 배열의 크기를 출력한다.
[Python] 백준 2577: 숫자의 개수 https://www.acmicpc.net/problem/2577 2577번: 숫자의 개수 첫째 줄에 A, 둘째 줄에 B, 셋째 줄에 C가 주어진다. A, B, C는 모두 100보다 크거나 같고, 1,000보다 작은 자연수이다. www.acmicpc.net a = int(input()) b = int(input()) c = int(input()) result = list(str(a * b* c)) for i in range(10): print(result.count(str(i))) 코드 해석 result 를 a b c 의 곱의 각각을 list 형식으로 받아들인다. 이후 count를 사용하여 그 리스트에 문자가 몇 개씩 있는지 출력.
[Python] 백준 10818 최소, 최대 https://www.acmicpc.net/problem/10818 10818번: 최소, 최대 첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다. www.acmicpc.net n = int(input()) a = list(map(int,input().split())) min = a[0] max = a[0] for i in range(n): if max a[i]: min = a[i] print(min,max) n = lnt(input()) a = list(map(int,input().s..
[Python] 백준 1110 더하기 사이클 https://www.acmicpc.net/problem/1110 1110번: 더하기 사이클 0보다 크거나 같고, 99보다 작거나 같은 정수가 주어질 때 다음과 같은 연산을 할 수 있다. 먼저 주어진 수가 10보다 작다면 앞에 0을 붙여 두 자리 수로 만들고, 각 자리의 숫자를 더한다. 그 다음, www.acmicpc.net n = int(input()) n_num = n i = 0 while True: sum = n//10 + n % 10 set_num = (n % 10) * 10 + sum % 10 i += 1 n = set_num if set_num == n_num: break print(i) 코드 해석 문제 0보다 크거나 같고, 99보다 작거나 같은 정수가 주어질 때 다음과 같은 연산을 할 수 있..
[Python] 백준 10951 A + B - 4 https://www.acmicpc.net/problem/10951 10951번: A+B - 4 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net while True: try: a, b = map(int, input().split()) except: break print(a + b) 코드 해석 https://holywat2r.tistory.com/117 [Python] try-except 예외처리 예외(exception) 런타임 오류 (runtime error) 프로그램 실행중에 발생하는 오류를 말한다. 파이썬은이러한 예외상황과 오류에 대한 처리를 위해 try except 구문을 사용한다. try-except 사용 try: a, b = map(in...
[Python] try-except 예외처리 예외(exception) 런타임 오류 (runtime error) 프로그램 실행중에 발생하는 오류를 말한다. 파이썬은이러한 예외상황과 오류에 대한 처리를 위해 try except 구문을 사용한다. try-except 사용 try: a, b = map(int, input().split()) except: break print(a,b) try: 구문에서는 에러가 발생할 여지가 있는 문장을 작성하고 except: 구문에서는 에러가 발생하였을 시 실행시킬 문장을 작성한다. 즉, 아무런 에러가 발생하지 않는 경우에는 except를 지나쳐 print(a,b) 코드를 실행시키는 것이다. try except else finally try: 에러가 발생할수도 있는 구문 except: 에러가 발생했을 때 실행할 구문 el..