제출 #176024

#제출 시각아이디문제언어결과실행 시간메모리
176024Peacher29선물상자 (IOI15_boxes)C++14
100 / 100
1113 ms524288 KiB
#include "boxes.h" #include<bits/stdc++.h> using namespace std; class pont{ public: int elotte; int utana; int hely; long long vissza; long long elolrol; long long hatulrol; }; vector<pont> p; long long delivery(int n, int k, int l, int in[]) { p.resize(n+1); for(int i=0;i<=n;i++){ p[i].elotte = (i-1+n+1)%(n+1); p[i].utana = (i+1)%(n+1); } p[0].hely=0; for(int i=1;i<=n;i++){ p[i].hely=in[i-1]; } long long eddig=0; for(int i=1;i<=n;i++){ p[i].vissza= min ( p[i].hely, l-p[i].hely ); //cout << i << ':' << p[i].vissza << '\t'; /*if((i-1)%k==0){ eddig+=p[i].hely+p[i].vissza; p[i].elolrol=eddig; } else { eddig+=p[i].hely-p[p[i].elotte].hely; p[i].elolrol=eddig+p[i].vissza; } cout << i << ' ' << p[i].elolrol << '\n';*/ p[i].elolrol=p[max(i-k,0)].elolrol+p[i].hely+p[i].vissza; /* if(i%k==0){ eddig+=p[i].hely-p[p[i].elotte].hely+p[i].vissza; p[i].elolrol=eddig; } else if(i%k==1){ eddig+=p[i].hely; p[i].elolrol=eddig+p[i].vissza; } else { eddig+=p[i].hely-p[p[i].elotte].hely; p[i].elolrol=eddig+p[i].vissza; } cout << i << ' ' << (i)%k << ' ' << eddig << ' ' << p[i].elolrol << '\n';*/ } if(k==1){ long long ossz=0; for(int i=1;i<=n;i++){ ossz+=p[i].vissza; } return ossz*2; } eddig=0; p[0].hely=l; for(int i=n;i>0;i--){ int mit=i+k; if(i+k > n){ mit=0; } p[i].hatulrol=p[mit].hatulrol+l-p[i].hely+p[i].vissza; /* if((n-i+1+k)%k==0){ eddig+=p[p[i].utana].hely-p[i].hely+p[i].vissza; p[i].hatulrol=eddig; } else if((n-i+1+k)%k==1){ eddig+=l-p[i].hely; p[i].hatulrol=eddig+p[i].vissza; } else { eddig+=p[p[i].utana].hely-p[i].hely; p[i].hatulrol=eddig+p[i].vissza; }*/ //cout << i << ' ' << (n-i+1+k)%k << ' ' << eddig << ' ' << p[i].hatulrol << '\n'; } long long mn= LLONG_MAX; for(int i=0;i<=n;i++){ mn = min(p[i].elolrol+p[p[i].utana].hatulrol,mn); } return mn; }

컴파일 시 표준 에러 (stderr) 메시지

boxes.cpp: In function 'long long int delivery(int, int, int, int*)':
boxes.cpp:30:12: warning: variable 'eddig' set but not used [-Wunused-but-set-variable]
  long long eddig=0; 
            ^~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...