Submission #1291362
Source Code Expand
#include<cstdio> #include<vector> using namespace std; using ll=long long; using vi=vector<int>; using vll=vector<ll>; int min_u(ll& m, ll v) { if(m<0 || m>=v) { m=v; return 1; } return 0; } int main(void) { int n, k; vi a, h, ph; vll c, pc; while(scanf("%d%d", &n, &k)==2) { h.clear(); h.resize(n, -1); c.clear(); c.resize(n, -1); a.resize(n); for(int i=0;i<n;i++) scanf("%d", &a[i]); c[0]=0; h[0]=a[0]; for(int i=1;i<n;i++) { pc=c; ph=h; for(int j=0;j<i;j++) { if(pc[j]<0) continue; int ht=max(ph[j]+1, a[i]); if(min_u(c[j+1], pc[j]+ht-a[i])) { h[j+1]=ht; } } /* for(int i=0;i<n;i++) printf("%lld[h=%d] ", c[i], h[i]); printf("\n"); */ } printf("%lld\n", c[k-1]); } return 0; }
Submission Info
Submission Time | |
---|---|
Task | A - Atcoder Handles |
User | myanta |
Language | C++14 (GCC 5.4.1) |
Score | 0 |
Code Size | 834 Byte |
Status | WA |
Exec Time | 1 ms |
Memory | 256 KB |
Compile Error
./Main.cpp: In function ‘int main()’: ./Main.cpp:36:42: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result] for(int i=0;i<n;i++) scanf("%d", &a[i]); ^
Judge Result
Set Name | Subtask1 | Subtask2 | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 130 | 0 / 120 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Subtask1 | sub1_in1.txt, sub1_in2.txt, sub1_in3.txt |
Subtask2 | sub1_in1.txt, sub1_in2.txt, sub1_in3.txt, sub2_in1.txt, sub2_in2.txt, sub2_in3.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
sub1_in1.txt | WA | 1 ms | 256 KB |
sub1_in2.txt | WA | 1 ms | 256 KB |
sub1_in3.txt | WA | 1 ms | 256 KB |
sub2_in1.txt | WA | 1 ms | 256 KB |
sub2_in2.txt | WA | 1 ms | 256 KB |
sub2_in3.txt | WA | 1 ms | 256 KB |