Python(38)
-
[백준 11720] 숫자의 합 (브론즈 4) 문제 풀이- 파이썬 python
0. 자세한 설명은 YouTube 영상으로 1. 범용적 풀이 # ver 1 : 범용적 풀이 # 0. 입력 및 초기화 N = int(input()) arr = input() # 1. arr을 정수로 변환하여 누적 answer = 0 for i in range(len(arr)): answer += int(arr[i]) # 2. 출력 print(answer) 2. 파이써닉 풀이 # ver 2 : Pythonic 풀이 input() print(sum(map(int,input())))
2023.02.02 -
[백준 1620] 나는야 포켓몬 마스터 이다솜(실버 4) 문제 풀이- 파이썬 python
0. 자세한 설명은 YouTube 영상으로 1. 해시를 활용한 풀이 # 0. 입력 및 초기화 import sys input = sys.stdin.readline N, M = map(int, input().split()) # 1. N개의 정보를 hash에 반영 idx_to_name = {} name_to_idx = {} for i in range(1, N + 1): name = input().rstrip() idx_to_name[i] = name name_to_idx[name] = i # 2. M개의 쿼리를 해시를 통해 출력 for _ in range(M): query = input().rstrip() if query.isdigit(): print(idx_to_name[query]) else: print(..
2023.01.26 -
[프로그래머스 17682] 다트 게임(Lv 1) 문제 풀이- 파이썬 python
0. 자세한 설명은 YouTube 영상으로 1. 단순구현 + 문자열 유형 풀이 def solution(dartResult): # 0. 입력 및 초기화 scores = [] start_idx = 0 power = {'S' : 1, 'D' : 2, 'T' : 3 } # 1. dartResult 별로 처리 for i in range(len(dartResult)): op = dartResult[i] if op in power: scores.append(int(dartResult[start_idx:i]) ** power[op]) elif op == '*': scores[-2:] = [x * 2 for x in scores[-2:]] elif op == '#': scores[-1] = -scores[-1] if n..
2023.01.19 -
[백준 10816] 숫자 카드 2(실버 4) 문제 풀이- 파이썬 python
0. 자세한 설명은 YouTube 영상으로 1. 해시를 활용한 풀이 import sys # 0. 입력 및 초기화 input = sys.stdin.readline N = int(input()) a = map(int, input().split()) # 1. hash에 num 개수 반영 hash = {} for num in a: hash[num] = hash.setdefault(num, 0) + 1 # 2. hash에서 num 개수 출력 M = int(input()) b = map(int, input().split()) for num in b : print(hash.setdefault(num, 0), end = ' ') 2. 배열을 활용한 풀이 import sys input = sys.stdin.readlin..
2023.01.12 -
[프로그래머스] 콜라 문제 풀이(코딩테스트 입문 Lv. 1) - 파이썬 python
0. 자세한 설명은 YouTube 영상으로 1. 가장 단순한 풀이 def solution(a, b, n): answer = 0 # 1. 빈 병의 개수 n이 교환 가능한 최소 숫자 a 이상일 때까지 반복 while n >= a: # 2. b개의 병 추가 answer += b # 3. 남은 병 계산하기 n = n - a + b return answer 2. 최적화된 풀이 def solution(a, b, n): answer = 0 # 1. 빈 병의 개수 n이 교환 가능한 최소 숫자 a 이상일 때까지 반복 while n >= a: # 2. 현재 빈 병으로 받을 수 있는 새로운 개수 및 나머지 계산 newCount = n // a * b leftover = n % a # 3. 정답 반영 및 빈 병 개수 다시 계..
2022.12.15 -
[프로그래머스] 분수의 덧셈 문제 풀이(코딩테스트 입문 Lv. 0) - 파이썬 python
0. 자세한 설명은 YouTube 영상으로 1. 단순 gcd를 활용한 Solution # ver1 def solution(denum1, num1, denum2, num2): # 1. 두 분수의 합 계산 boonmo = num1 * num2 boonja = denum1 * num2 + denum2 * num1 # 2. 최대공약수 계산 start = max(boonmo, boonja) gcd_value = 1 for num in range(start, 0, -1): if boonmo % num == 0 and boonja % num == 0: gcd_value = num break # 3. gcd 로 나눈 값을 answer에 담기 answer = [boonja / gcd_value, boonmo / gcd_..
2022.12.08