[Python] 백준 알고리즘 온라인 저지 3052번 : 나머지 Python3 코드 nums = set() # 중복되는 요소를 제거 for _ in range(10): i = int(input()) nums.add(i%42) # 집합자료형에 원소를 추가할 때 add 함수를 사용 print(len(nums)) Python3 코드 풀이 1. 코드 풀이의 전체적인 내용 요약 이번 문제는 10개의 수를 입력받으면 각 수를 42로 나누어서 나머지를 구하고 중복되는 값을 제거한 이후 원소가 몇 종류의 숫자가 있는지를 출력하는 문제이다. 나머지는 % 연산자를 사용해서 구하였고 집합 자료형의 속성을 이용해서 중복되지 않는 요소만 남겨두도록 하여 문제를 풀었다. 코드를 상세히 보면 아래와 같다. 2. 입력받는 숫자의 나..
[Python] 백준 알고리즘 온라인 저지 2577번 : 숫자의 개수 Python3 코드 1) for문으로 숫자를 입력받는 코드 total = 1 for _ in range(3): i = int(input()) total *= i # 3개의 정수를 곱함 total_str = str(total) # 숫자를 str타입으로 변환 for num in range(10): # 0부터 9까지 num_count = total_str.count(str(num)) print(num_count) 2) 입력받는 세 수를 각각 변수에 지정하는 코드 a = int(input()) b = int(input()) c = int(input()) total_str = str(a*b*c) # 숫자를 곱해서 str타입으로 변환 for nu..
[Python] 백준 알고리즘 온라인 저지 2562번 : 최댓값 Python3 코드 1) 9개의 수를 for문으로 입력받는 코드 numbers = [] for _ in range(9): i = int(input()) numbers.append(i) print(max(numbers)) print(numbers.index(max(numbers))+1) 2) for문을 list comprehension 으로 작성한 코드 numbers = [int(input()) for _ in range(9)] print(max(numbers)) print(numbers.index(max(numbers)) + 1) Python3 코드 풀이 1. 작성한 코드에 대한 전체적인 내용 정리 이 문제는 9개의 숫자를 입력 받으면 입력..
[Python] 백준 알고리즘 온라인 저지 10996번 : 별 찍기 - 21 Python3 코드 n = int(input()) for _ in range(n): print('* '* (n - n//2)) print(' *'* (n//2)) Python3 코드 풀이 1. 코드 풀이에 대한 요약 정리 이 문제는 숫자를 입력받으면 입력받은 수만큼의 * 기호를 2줄에 나누어서 입력하고 입력받은 숫자만큼 반복해서 표기하는 문제이다. 입력받는 숫자가 짝수이면 같은 수로 2줄로 나누어 그릴 수 있고 홀수이면 윗줄에 하나 더 많이 그린다. 그리고 * 기호 사이에는 공백으로 구분한다. * 기호를 표기 할 때, 첫 번째 줄은 * 기호부터 시작되고 두 번째 줄은 공백부터 시작된다. 문자열로 표현한다면 첫째줄은 '* ' 모양..
[Python] 백준 알고리즘 온라인 저지 2446번 : 별 찍기 - 9 Python3 코드 1) 첫 번째 코드 - zip 함수를 이용 n = int(input()) for bin, star in zip(range(n-1), range(n*2-1 , 1, -2)) : # zip(공백, 별) print(' '*bin + '*'*star) for bin, star in zip(range(n)[::-1], range(1, n*2, 2)) : # zip(공백, 별) print(' '*bin + '*'*star) 공백과 별의 개수를 각각 range함수로 구하고서 zip함수를 이용해 짝으로 묶었다. 위 코드에서 print문을 수정해서 bin, star 변수의 값을 출력해보면 아래와 같다. 공백과 별의 수를 출력하고..