Algorithm/백준

dp문제 시간 초과 계속 나와서 당황스러웠다... 함수로 묶어주니깐 시간 초과 안나왔음! def sol(): N,K=map(int,input().split()) dp=[[0]*(K+1) for _ in range(N+1)] w=[0] v=[0] for n in range(1,N+1): a,b=map(int,input().split()) w.append(a) v.append(b) for i in range(1,N+1): for j in range(1,K+1): dp[i][j] = dp[i-1][j]; if j-w[i]>=0: dp[i][j]=max(dp[i-1][j],dp[i-1][j-w[i]]+v[i]) print(dp[N][K]) sol() 코드 훈수 환영합니다!!
최단거리 구하기 문제 당연하게도 DFS로 풀었다. 처음에 while문에 무한반복되면 자동으로 멈추라고 적당히 종료조건 넣었다가.... 까먹고 "맞는거같은데.. 뭐지?" 하면서 삽질했다... 꾸준히 코딩안한 벌인듯... from collections import deque dq= deque([]) n,m= map(int, input().split()) arr=[list(map(int, input().split())) for _ in range(n)] visit=[[0]*m for _ in range(n)] result=[[0]*m for _ in range(n)] def range_out(x,y): if x=n or y=m or arr[x][y]==0 or visit[x][y]==1: return Fals..
comoZ
'Algorithm/백준' 카테고리의 글 목록