Submission #370470

#TimeUsernameProblemLanguageResultExecution timeMemory
370470daniel920712Bigger segments (IZhO19_segments)C++14
37 / 100
1567 ms3292 KiB
#include <iostream> #include <stdio.h> #include <stdlib.h> #include <algorithm> using namespace std; long long all[500005]; pair < long long ,long long > DP[500005]; long long sum[500005]={0},N; int main() { long long i,j,k,ans=0; scanf("%lld",&N); for(i=1;i<=N;i++) { scanf("%lld",&all[i]); sum[i]=all[i]+sum[i-1]; } DP[0]=make_pair(0,0); for(i=1;i<=N;i++) { DP[i]=make_pair(0,0); for(j=0;j<i;j++) { if(sum[i]-sum[j]>=DP[j].second) { if(DP[j].first+1>DP[i].first) DP[i]=make_pair(DP[j].first+1,sum[i]-sum[j]); else if(DP[j].first+1==DP[i].first) DP[i]=make_pair(DP[j].first+1,min(DP[i].second,sum[i]-sum[j])); } } } printf("%lld\n",DP[N].first); return 0; }

Compilation message (stderr)

segments.cpp: In function 'int main()':
segments.cpp:13:19: warning: unused variable 'k' [-Wunused-variable]
   13 |     long long i,j,k,ans=0;
      |                   ^
segments.cpp:13:21: warning: unused variable 'ans' [-Wunused-variable]
   13 |     long long i,j,k,ans=0;
      |                     ^~~
segments.cpp:14:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   14 |     scanf("%lld",&N);
      |     ~~~~~^~~~~~~~~~~
segments.cpp:17:14: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   17 |         scanf("%lld",&all[i]);
      |         ~~~~~^~~~~~~~~~~~~~~~
#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...