답안 #427919

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
427919 2021-06-15T05:06:38 Z Amylopectin Knapsack (NOI18_knapsack) C++14
29 / 100
2 ms 352 KB
#include <iostream>
#include <stdio.h>
using namespace std;
const int mxn = 1e5 + 10;
long long ta[mxn] = {},nru[mxn] = {},chc[mxn] = {};
long long fima(long long l,long long r)
{
    if(l > r)
        return l;
    return r;
}
int main()
{
    long long i,j,n,m,cva,cwe,cco,cma = 0;
    scanf("%lld %lld",&m,&n);
    for(i=0; i<n; i++)
    {
        scanf("%lld %lld %lld",&cva,&cwe,&cco);
        for(j=0; j<cwe; j++)
        {
            nru[j] = ta[j];
        }
        for(j=cwe; j<=m; j++)
        {
            if(chc[j-cwe] == cco)
            {
//                nru[j] = fima(ta[j-(cco * cwe)] + (cco * cva), ta[j]);
                if(ta[j-(cco * cwe)] + (cco * cva) > ta[j])
                {
                    nru[j] = ta[j-(cco * cwe)] + (cco * cva);
                    chc[j] = cco;
                }
                else
                {
                    nru[j] = ta[j];
                }
//                chc[j] = cco;
            }
            else
            {
//                nru[j] = fima(, ta[j]);
                if(nru[j-cwe] + cva > ta[j])
                {
//                    if(j-cwe < cwe)
//                    {
//                        nru[j] = ta[j-cwe] + cva;
//                    }
//                    else
//                    {
                        nru[j] = nru[j-cwe] + cva;
//                    }
                    chc[j] = chc[j-cwe] + 1;
                }
                else
                {
                    nru[j] = ta[j];
                }
            }
        }
        for(j=0; j<=m; j++)
        {
            chc[j] = 0;
            ta[j] = fima(nru[j],ta[j]);
            nru[j] = 0;
        }
    }
    for(i=0; i<=m; i++)
    {
        cma = fima(cma,ta[i]);
    }
    printf("%lld\n",cma);
    return 0;
}

Compilation message

knapsack.cpp: In function 'int main()':
knapsack.cpp:15:10: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   15 |     scanf("%lld %lld",&m,&n);
      |     ~~~~~^~~~~~~~~~~~~~~~~~~
knapsack.cpp:18:14: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   18 |         scanf("%lld %lld %lld",&cva,&cwe,&cco);
      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 332 KB Output is correct
2 Correct 1 ms 332 KB Output is correct
3 Correct 1 ms 332 KB Output is correct
4 Correct 1 ms 332 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 332 KB Output is correct
3 Correct 1 ms 332 KB Output is correct
4 Correct 2 ms 332 KB Output is correct
5 Correct 1 ms 332 KB Output is correct
6 Correct 1 ms 332 KB Output is correct
7 Correct 1 ms 332 KB Output is correct
8 Correct 1 ms 332 KB Output is correct
9 Correct 1 ms 332 KB Output is correct
10 Correct 1 ms 332 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 332 KB Output is correct
3 Correct 1 ms 332 KB Output is correct
4 Correct 2 ms 332 KB Output is correct
5 Correct 1 ms 332 KB Output is correct
6 Correct 1 ms 332 KB Output is correct
7 Correct 1 ms 332 KB Output is correct
8 Correct 1 ms 332 KB Output is correct
9 Correct 1 ms 332 KB Output is correct
10 Correct 1 ms 332 KB Output is correct
11 Correct 1 ms 204 KB Output is correct
12 Correct 1 ms 332 KB Output is correct
13 Correct 2 ms 332 KB Output is correct
14 Correct 2 ms 352 KB Output is correct
15 Correct 1 ms 332 KB Output is correct
16 Correct 2 ms 332 KB Output is correct
17 Correct 1 ms 332 KB Output is correct
18 Correct 1 ms 332 KB Output is correct
19 Incorrect 1 ms 332 KB Output isn't correct
20 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 332 KB Output is correct
2 Correct 1 ms 332 KB Output is correct
3 Correct 1 ms 332 KB Output is correct
4 Correct 1 ms 332 KB Output is correct
5 Correct 1 ms 204 KB Output is correct
6 Correct 1 ms 332 KB Output is correct
7 Correct 1 ms 332 KB Output is correct
8 Correct 2 ms 332 KB Output is correct
9 Correct 1 ms 332 KB Output is correct
10 Correct 1 ms 332 KB Output is correct
11 Correct 1 ms 332 KB Output is correct
12 Correct 1 ms 332 KB Output is correct
13 Correct 1 ms 332 KB Output is correct
14 Correct 1 ms 332 KB Output is correct
15 Correct 1 ms 204 KB Output is correct
16 Correct 1 ms 332 KB Output is correct
17 Correct 2 ms 332 KB Output is correct
18 Correct 2 ms 352 KB Output is correct
19 Correct 1 ms 332 KB Output is correct
20 Correct 2 ms 332 KB Output is correct
21 Correct 1 ms 332 KB Output is correct
22 Correct 1 ms 332 KB Output is correct
23 Incorrect 1 ms 332 KB Output isn't correct
24 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 332 KB Output is correct
2 Correct 1 ms 332 KB Output is correct
3 Correct 1 ms 332 KB Output is correct
4 Correct 1 ms 332 KB Output is correct
5 Correct 1 ms 204 KB Output is correct
6 Correct 1 ms 332 KB Output is correct
7 Correct 1 ms 332 KB Output is correct
8 Correct 2 ms 332 KB Output is correct
9 Correct 1 ms 332 KB Output is correct
10 Correct 1 ms 332 KB Output is correct
11 Correct 1 ms 332 KB Output is correct
12 Correct 1 ms 332 KB Output is correct
13 Correct 1 ms 332 KB Output is correct
14 Correct 1 ms 332 KB Output is correct
15 Correct 1 ms 204 KB Output is correct
16 Correct 1 ms 332 KB Output is correct
17 Correct 2 ms 332 KB Output is correct
18 Correct 2 ms 352 KB Output is correct
19 Correct 1 ms 332 KB Output is correct
20 Correct 2 ms 332 KB Output is correct
21 Correct 1 ms 332 KB Output is correct
22 Correct 1 ms 332 KB Output is correct
23 Incorrect 1 ms 332 KB Output isn't correct
24 Halted 0 ms 0 KB -