1. 문제 2. 정답 코드 def fibo(n) : if n == 0 : return 0 elif n == 1 : return 1 else : l, r = 0, 1 for i in range(n-1) : l, r = r, (l + r) % 1234567 return r def solution(n): answer = fibo(n) return answer 재귀 함수 사용 시 시간 초과 및 런타임 에러 발생 ➡️ for문을 통한 다이나믹 프로그래밍 사용 8번째 줄: (l + r) % 1234567에서 1234567을 나누는 이유는 다른 언어의 경우 오버 플로우가 발생할 수도 있기 때문 { f(n-1) + f(n-2) } % 1234567은 f(n-1) % 1234567 + f(n-2) % 1234567과 같음
https://www.acmicpc.net/problem/1920 1920번: 수 찾기 첫째 줄에 자연수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 줄에는 N개의 정수 A[1], A[2], …, A[N]이 주어진다. 다음 줄에는 M(1 ≤ M ≤ 100,000)이 주어진다. 다음 줄에는 M개의 수들이 주어지는데, 이 수들 www.acmicpc.net 1. 문제 2. 정답 코드 import sys input = sys.stdin.readline # input()보다 빠른 sys.stdin.readline() 사용 # n n = int(input()) ns = list(map(int, input().split())) ns.sort() # 이진 탐색을 위한 오름차순 정렬 # m m = int(inpu..
https://www.acmicpc.net/problem/1924 1924번: 2007년 첫째 줄에 빈 칸을 사이에 두고 x(1 ≤ x ≤ 12)와 y(1 ≤ y ≤ 31)이 주어진다. 참고로 2007년에는 1, 3, 5, 7, 8, 10, 12월은 31일까지, 4, 6, 9, 11월은 30일까지, 2월은 28일까지 있다. www.acmicpc.net 1. 문제 2. 정답 코드 m, d = map(int, input().split()) MONTH = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31] DAYS = ['MON', 'TUE', 'WED', 'THU', 'FRI', 'SAT', 'SUN'] # 1월 1일 월요일 total_days = d # 입력 월의 day..