Submission #1371017
Source Code Expand
#include <bits/stdc++.h> using namespace std; typedef signed long long ll; #undef _P #define _P(...) (void)printf(__VA_ARGS__) #define FOR(x,to) for(x=0;x<(to);x++) #define FORR(x,arr) for(auto& x:arr) #define ITR(x,c) for(__typeof(c.begin()) x=c.begin();x!=c.end();x++) #define ALL(a) (a.begin()),(a.end()) #define ZERO(a) memset(a,0,sizeof(a)) #define MINUS(a) memset(a,0xff,sizeof(a)) //------------------------------------------------------- int N,K; ll A[101010],B[101010]; ll S[101010]; ll dp[101010]; void solve() { int i,j,k,l,r,x,y; string s; cin>>N>>K; FOR(i,N) { cin>>A[i]>>B[i]; if(B[i]==1 && A[i]>K/2) return _P("-1\n"); if(B[i]==2) assert(0); S[i+1]=S[i]+A[i]; } y=0; for(x=1;x<=N;x++) { if(S[x]<=K/2) { dp[x]=2*S[x]; } else { while(S[x]-S[y]>K/2) y++; dp[x]=dp[y]+K; } } /* ll mi=1LL<<60; for(i=N;i>=0;i--) { if(S[N]-S[i]>K/2) continue; ll cur=S[i]; ll wait=0; for(j=i;j>0;j--) { ll L=cur%K,R=(cur+A[j-1])%K; if(R<L) R+=K; ll x=S[j-1]%K,y=S[j]%K; if(y<x) y+=K; cur+=A[j-1]; if(L<=y && x<R) { cur+=(y-L); wait+=(y-L); } else if(L+K<=y && x<R+K) { cur+=(y-(L+K)); wait+=(y-(L+K)); } else if(L<=y+K && x+K<R) { cur+=(y+K-L); wait+=(y+K-L); } } mi=min(mi,wait); } */ if(S[N]<=K/2) { cout<<2*S[N]<<endl; } else { cout<<dp[N-1]+2*A[N-1]<<endl; } } int main(int argc,char** argv){ string s;int i; if(argc==1) ios::sync_with_stdio(false), cin.tie(0); FOR(i,argc-1) s+=argv[i+1],s+='\n'; FOR(i,s.size()) ungetc(s[s.size()-1-i],stdin); solve(); return 0; }
Submission Info
Submission Time | |
---|---|
Task | F - Train Service Planning |
User | kmjp |
Language | C++14 (GCC 5.4.1) |
Score | 0 |
Code Size | 1693 Byte |
Status | RE |
Exec Time | 99 ms |
Memory | 3456 KB |
Judge Result
Set Name | Sample | All | subtask | subtask2 | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 0 / 700 | 0 / 500 | 0 / 500 | ||||||||||||||||||||
Status |
|
|
|
|
Set Name | Test Cases |
---|---|
Sample | sample1.txt, sample2.txt, sample3.txt, sample4.txt |
All | sample1.txt, sample2.txt, sample3.txt, sample4.txt, in1.txt, in10.txt, in101.txt, in102.txt, in103.txt, in104.txt, in105.txt, in106.txt, in107.txt, in108.txt, in109.txt, in11.txt, in110.txt, in12.txt, in13.txt, in14.txt, in15.txt, in16.txt, in17.txt, in18.txt, in19.txt, in2.txt, in20.txt, in21.txt, in22.txt, in23.txt, in24.txt, in25.txt, in26.txt, in27.txt, in28.txt, in3.txt, in4.txt, in5.txt, in6.txt, in7.txt, in8.txt, in9.txt, sample1.txt, sample2.txt, sample3.txt, sample4.txt, sub2in1.txt, sub2in10.txt, sub2in11.txt, sub2in12.txt, sub2in13.txt, sub2in14.txt, sub2in15.txt, sub2in16.txt, sub2in17.txt, sub2in18.txt, sub2in19.txt, sub2in2.txt, sub2in20.txt, sub2in21.txt, sub2in22.txt, sub2in23.txt, sub2in24.txt, sub2in3.txt, sub2in4.txt, sub2in5.txt, sub2in6.txt, sub2in7.txt, sub2in8.txt, sub2in9.txt, subin1.txt, subin10.txt, subin101.txt, subin102.txt, subin103.txt, subin104.txt, subin105.txt, subin106.txt, subin107.txt, subin108.txt, subin109.txt, subin11.txt, subin12.txt, subin13.txt, subin14.txt, subin15.txt, subin16.txt, subin17.txt, subin18.txt, subin19.txt, subin2.txt, subin20.txt, subin201.txt, subin21.txt, subin22.txt, subin23.txt, subin24.txt, subin3.txt, subin4.txt, subin5.txt, subin6.txt, subin7.txt, subin8.txt, subin9.txt |
subtask | sample1.txt, sample2.txt, sample3.txt, subin1.txt, subin10.txt, subin101.txt, subin102.txt, subin103.txt, subin104.txt, subin105.txt, subin106.txt, subin107.txt, subin108.txt, subin109.txt, subin11.txt, subin12.txt, subin13.txt, subin14.txt, subin15.txt, subin16.txt, subin17.txt, subin18.txt, subin19.txt, subin2.txt, subin20.txt, subin201.txt, subin21.txt, subin22.txt, subin23.txt, subin24.txt, subin3.txt, subin4.txt, subin5.txt, subin6.txt, subin7.txt, subin8.txt, subin9.txt |
subtask2 | sample1.txt, sample2.txt, sample3.txt, sample4.txt, sub2in1.txt, sub2in10.txt, sub2in11.txt, sub2in12.txt, sub2in13.txt, sub2in14.txt, sub2in15.txt, sub2in16.txt, sub2in17.txt, sub2in18.txt, sub2in19.txt, sub2in2.txt, sub2in20.txt, sub2in21.txt, sub2in22.txt, sub2in23.txt, sub2in24.txt, sub2in3.txt, sub2in4.txt, sub2in5.txt, sub2in6.txt, sub2in7.txt, sub2in8.txt, sub2in9.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
in1.txt | RE | 96 ms | 256 KB |
in10.txt | RE | 96 ms | 256 KB |
in101.txt | RE | 96 ms | 256 KB |
in102.txt | RE | 96 ms | 256 KB |
in103.txt | RE | 96 ms | 256 KB |
in104.txt | RE | 96 ms | 256 KB |
in105.txt | RE | 96 ms | 256 KB |
in106.txt | RE | 96 ms | 256 KB |
in107.txt | RE | 95 ms | 256 KB |
in108.txt | RE | 96 ms | 256 KB |
in109.txt | RE | 96 ms | 256 KB |
in11.txt | RE | 96 ms | 256 KB |
in110.txt | RE | 95 ms | 256 KB |
in12.txt | RE | 96 ms | 256 KB |
in13.txt | RE | 95 ms | 256 KB |
in14.txt | RE | 95 ms | 256 KB |
in15.txt | RE | 95 ms | 256 KB |
in16.txt | RE | 96 ms | 256 KB |
in17.txt | RE | 96 ms | 256 KB |
in18.txt | RE | 96 ms | 256 KB |
in19.txt | RE | 96 ms | 256 KB |
in2.txt | RE | 96 ms | 256 KB |
in20.txt | RE | 96 ms | 256 KB |
in21.txt | RE | 96 ms | 256 KB |
in22.txt | RE | 96 ms | 256 KB |
in23.txt | RE | 96 ms | 256 KB |
in24.txt | RE | 96 ms | 256 KB |
in25.txt | RE | 96 ms | 256 KB |
in26.txt | RE | 95 ms | 256 KB |
in27.txt | RE | 96 ms | 256 KB |
in28.txt | RE | 96 ms | 256 KB |
in3.txt | RE | 99 ms | 256 KB |
in4.txt | RE | 96 ms | 256 KB |
in5.txt | RE | 96 ms | 256 KB |
in6.txt | RE | 95 ms | 256 KB |
in7.txt | RE | 96 ms | 256 KB |
in8.txt | RE | 95 ms | 256 KB |
in9.txt | RE | 96 ms | 256 KB |
sample1.txt | AC | 1 ms | 256 KB |
sample2.txt | AC | 1 ms | 256 KB |
sample3.txt | AC | 1 ms | 256 KB |
sample4.txt | RE | 95 ms | 256 KB |
sub2in1.txt | RE | 96 ms | 256 KB |
sub2in10.txt | WA | 1 ms | 256 KB |
sub2in11.txt | AC | 1 ms | 256 KB |
sub2in12.txt | WA | 1 ms | 256 KB |
sub2in13.txt | AC | 1 ms | 256 KB |
sub2in14.txt | WA | 1 ms | 256 KB |
sub2in15.txt | RE | 96 ms | 256 KB |
sub2in16.txt | RE | 96 ms | 256 KB |
sub2in17.txt | RE | 98 ms | 256 KB |
sub2in18.txt | RE | 96 ms | 256 KB |
sub2in19.txt | RE | 95 ms | 256 KB |
sub2in2.txt | RE | 95 ms | 256 KB |
sub2in20.txt | AC | 1 ms | 256 KB |
sub2in21.txt | WA | 1 ms | 256 KB |
sub2in22.txt | WA | 1 ms | 256 KB |
sub2in23.txt | AC | 1 ms | 256 KB |
sub2in24.txt | WA | 1 ms | 256 KB |
sub2in3.txt | RE | 96 ms | 256 KB |
sub2in4.txt | RE | 96 ms | 256 KB |
sub2in5.txt | RE | 95 ms | 256 KB |
sub2in6.txt | RE | 96 ms | 256 KB |
sub2in7.txt | RE | 96 ms | 256 KB |
sub2in8.txt | AC | 1 ms | 256 KB |
sub2in9.txt | WA | 1 ms | 256 KB |
subin1.txt | WA | 17 ms | 3456 KB |
subin10.txt | WA | 17 ms | 3456 KB |
subin101.txt | WA | 17 ms | 3456 KB |
subin102.txt | WA | 15 ms | 3456 KB |
subin103.txt | WA | 14 ms | 3456 KB |
subin104.txt | WA | 14 ms | 3456 KB |
subin105.txt | WA | 14 ms | 3456 KB |
subin106.txt | WA | 14 ms | 3456 KB |
subin107.txt | WA | 15 ms | 3456 KB |
subin108.txt | WA | 15 ms | 3456 KB |
subin109.txt | WA | 15 ms | 3456 KB |
subin11.txt | WA | 17 ms | 3456 KB |
subin12.txt | WA | 18 ms | 3456 KB |
subin13.txt | WA | 17 ms | 3456 KB |
subin14.txt | WA | 17 ms | 3456 KB |
subin15.txt | WA | 16 ms | 3456 KB |
subin16.txt | WA | 16 ms | 3456 KB |
subin17.txt | WA | 16 ms | 3456 KB |
subin18.txt | WA | 16 ms | 3456 KB |
subin19.txt | WA | 16 ms | 3456 KB |
subin2.txt | AC | 16 ms | 3456 KB |
subin20.txt | WA | 16 ms | 3456 KB |
subin201.txt | AC | 1 ms | 256 KB |
subin21.txt | WA | 13 ms | 3456 KB |
subin22.txt | WA | 13 ms | 3456 KB |
subin23.txt | WA | 13 ms | 3456 KB |
subin24.txt | AC | 13 ms | 3456 KB |
subin3.txt | AC | 18 ms | 3456 KB |
subin4.txt | AC | 15 ms | 2944 KB |
subin5.txt | WA | 17 ms | 3456 KB |
subin6.txt | WA | 16 ms | 3456 KB |
subin7.txt | AC | 16 ms | 2560 KB |
subin8.txt | AC | 11 ms | 1920 KB |
subin9.txt | WA | 18 ms | 3456 KB |