2-1 2609. 최대공약수와 최소공배수
최대공약수와 최소공배수 찾기
lcm(a,b) = ab/gcd(a,b) 이용
if b % a == 0:
print(a)
print(b)
elif a % b == 0:
print(b)
print(a)
else:
c = b if b < a else a
d = 1
for j in range(2,c+1):
if a % j == 0 and b % j == 0:
d = j
print(d)
print((a*b)//d)
2-2 9461. 파도반 수열
길를 정하는데 규칙이 있다.
dp[k] = dp[k-5]+dp[k-1]
2-3 1149. RGB거리
첫번째를 R로 칠한 경우
첫번째를 G로 칠한 경우
첫번째를 B로 칠한 경우
3가지의 경우를 모두 고려하여 N번째 까지 계산
dp[i][0] += min(dp[i-1][1], dp[i-1][2])
dp[i][1] += min(dp[i-1][0], dp[i-1][2])
dp[i][2] += min(dp[i-1][0], dp[i-1][1])
2-3 1932. 정수 삼각형
모든 값을 유지
1. 현재 층의 맨 앞과 맨 뒤 요소는
전 층의 맨 앞과 맨 뒤 요소를 더함
2. 현재 층의 k번째 요소는
전 층의 max(k-1번째 요소, k번째 요소)를 더함
3. 1층과 2층은 따로 계산해서 넣는다