728x90
반응형
n = int(input()) # 1<=n<=1000
data= list(map(int,input().split()))

k = 0 
cnt = 0 

for i in data:
  if i == k : 
    cnt += 1 
    k = ( i + 1 ) %3 

print(cnt)

 

728x90
반응형

'백준 > 그리디' 카테고리의 다른 글

# 1439번: 뒤집기  (0) 2020.10.15
# 1931 회의실 배정  (0) 2020.09.18
# 11047 동전 0  (0) 2020.09.02
# 1541 잃어버린 괄호  (0) 2020.09.02
# 2839 설탕배달  (0) 2020.09.02
728x90
반응형
n = int(input()) # n <= 1000 
data = list(map(int,input().split()))

dp=[1]*1001

for i in range(n):
  for j in range(i):
    if data[j] > data[i]:
      dp[i] = max(dp[i], dp[j]+1)

print ( max(dp) )
728x90
반응형

'백준 > 다이나믹 프로그래밍' 카테고리의 다른 글

# 1890 점프 파이썬  (0) 2021.04.08
# 9465 스티커 파이썬  (0) 2021.03.11
# 1965 상자넣기  (0) 2020.09.17
# 1904 01타일  (0) 2020.09.17
# 13301 타일 장식물  (0) 2020.09.17
728x90
반응형

# 가장 긴 증가하는 수열 찾기랑 비슷 

n = int(input()) # n <= 1000 
data= list(map(int,input().split()))

dp = [1]*1001

for i in range(n):
  for j in range(i):
    if data[j] < data[i]:
      dp[i] = max( dp[j]+1, dp[i])

print(max(dp))

 

자기 자신인 상자 1 개는 무조건 넣을 수 있으므로 dp = [1]*1001 로 선언한다. 

만약 나보다 작은 상자를 발견하면, 해당 상자를 나에게 넣는 것과 넣지 않는 것의 크기를 비교해서 더 큰 것을 넣는다. 

 

https://www.acmicpc.net/problem/1965

 

1965번: 상자넣기

정육면체 모양의 상자가 일렬로 늘어서 있다. 상자마다 크기가 주어져 있는데, 앞에 있는 상자의 크기가 뒤에 있는 상자의 크기보다 작으면, 앞에 있는 상자를 뒤에 있는 상자 안에 넣을 수가 ��

www.acmicpc.net

 

728x90
반응형

'백준 > 다이나믹 프로그래밍' 카테고리의 다른 글

# 9465 스티커 파이썬  (0) 2021.03.11
# 11722 가장 긴 감소하는 부분 수열  (0) 2020.09.17
# 1904 01타일  (0) 2020.09.17
# 13301 타일 장식물  (0) 2020.09.17
# 9252 LCS2  (0) 2020.09.17
728x90
반응형
n = int(input()) # n <= 1,000,000

dp = [0] * 1000001

dp[1] = 1
dp[2] = 2 

for i in range(3,n+1):
  dp[i] = ( dp[i-2] + dp[i-1] ) % 15746

print(dp[n])

 

 

# 런타임 에러 해결 

dp = [0]*(n+1) 이런 식으로 작성하면 런타임 에러 남 

 

https://www.acmicpc.net/problem/1904

 

1904번: 01타일

지원이에게 2진 수열을 가르쳐 주기 위해, 지원이 아버지는 그에게 타일들을 선물해주셨다. 그리고 이 각각의 타일들은 0 또는 1이 쓰여 있는 낱장의 타일들이다. 어느 날 짓궂은 동주가 지원이��

www.acmicpc.net

 

728x90
반응형

'백준 > 다이나믹 프로그래밍' 카테고리의 다른 글

# 11722 가장 긴 감소하는 부분 수열  (0) 2020.09.17
# 1965 상자넣기  (0) 2020.09.17
# 13301 타일 장식물  (0) 2020.09.17
# 9252 LCS2  (0) 2020.09.17
# 9251 LCS ( 개념 )  (0) 2020.09.17
728x90
반응형
n = int(input())

dp = [0]*81

dp[0]=1 
dp[1]=1 

for i in range(2,n):
  dp[i] = dp[i-1]+dp[i-2]

r = dp[n-1] + dp[n-1] + dp[n-2]

print( r+r )  

 

# 런타임 에러 

 

이유 :  dp = [0]*n 으로 했더니 런타임 에러가 났다.

         크기는 항상 주어진 값 보고 그 것 보다 하나 더 크게 잡아줄 것.

 

www.acmicpc.net/problem/13301

 

13301번: 타일 장식물

대구 달성공원에 놀러 온 지수는 최근에 새로 만든 타일 장식물을 보게 되었다. 타일 장식물은 정사각형 타일을 붙여 만든 형태였는데, 한 변이 1인 정사각형 타일부터 시작하여 마치 앵무조개��

www.acmicpc.net

 

728x90
반응형

'백준 > 다이나믹 프로그래밍' 카테고리의 다른 글

# 1965 상자넣기  (0) 2020.09.17
# 1904 01타일  (0) 2020.09.17
# 9252 LCS2  (0) 2020.09.17
# 9251 LCS ( 개념 )  (0) 2020.09.17
# 11048 이동하기  (0) 2020.09.15

+ Recent posts