이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include<stdio.h>
int N, M, m[100] = { 0 }, c[100] = { 0 };
int cost(int i, int mem){
int used, unused;
if (i == N - 1){
if (mem > m[N - 1]) return 10001;
if (mem <= 0) return 0;
return c[N - 1];
}
used = c[i]+cost(i + 1, mem - m[i]);
unused = cost(i + 1, mem);
if (used > unused) return unused;
return used;
}
int main(){
int i;
scanf("%d %d", &N, &M);
for (i = 0; i < N; ++i) scanf("%d", &m[i]);
for (i = 0; i < N; ++i) scanf("%d", &c[i]);
printf("%d\n", cost(0,M));
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |