dp

알고리즘 문제 풀이/1DP_과제(~180615)

171209_11722_가장 긴 감소하는 부분 수열

//https://www.acmicpc.net/problem/11722 #include using namespace std; int main(){ int A[1001]; int dp[1001]; int N,x,max; cin >> N; for(int i=1; i> A[i]; dp[1]=1; for(int i=2; i0; j--) { x=1; //자기 자신의 길이가 최초인 경우 항상 1 if(A[i]

알고리즘 문제 풀이/1DP_과제(~180615)

171209_11055_가장 큰 증가 부분 수열

//https://www.acmicpc.net/problem/11055 #include using namespace std; int main(){ int n; cin >> n; int A[1001]; int dp[1001]; int x,max,index; for(int i=1; i> A[i]; dp[1]=A[1]; for(int i=2; i0; j--) { x=A[i]; if(A[i]>A[j]) x=dp[j]+A[i]; if(max

알고리즘 문제 풀이/1DP_과제(~180615)

171208_1965_상자넣기

//https://www.acmicpc.net/problem/1965 #include using namespace std; int main(){ int n; cin >> n; int box[1001]; int dp[1001]; int x,max; for(int i=1; i> box[i]; dp[1]=1; for(int i=2; i0; j--) { x=1; if(box[i]>box[j]) x=dp[j]+1; if(max

알고리즘 문제 풀이/1DP_과제(~180615)

171208_11060_점프 점프

//https://www.acmicpc.net/problem/11060 #include using namespace std; int main(){ int N; cin >> N; int A[1001]; int dp[1001]; int min; for(int i=1; i> A[i]; dp[1]=0; for(int i=2; i0; j--) { if(i-j==101) break; if(j+A[j]>=i && dp[j]!=-1) if(min>dp[j]+1) min=dp[j]+1; } if(min==1001) dp[i]=-1; else dp[i]=min; } cout i로 이동해 올 수 있는 값들을 j라고 한다면, i-100부터 i-1까지가 j의 범위, 또는 i가 100보다 작은 경우에는 1번 칸까지 탐색하면 됨...

bong sue
'dp' 태그의 글 목록 (6 Page)