Submission #370407

#TimeUsernameProblemLanguageResultExecution timeMemory
370407daniel920712Bigger segments (IZhO19_segments)C++14
27 / 100
1525 ms10896 KiB
#include <iostream> #include <stdio.h> #include <stdlib.h> using namespace std; long long all[500005]; long long DP[3005][3005]; bool have[3005][3005]={0}; long long sum[500005]={0},N; long long F(long long a,long long b) { long long i; if(b==N) return 1; if(have[a][b]) return DP[a][b]; have[a][b]=1; for(i=b+1;i<=N;i++) { if(sum[i]-sum[b]>=sum[b]-sum[a]) DP[a][b]=max(DP[a][b],F(b,i)+1); } return DP[a][b]; } int main() { long long i,ans=0; scanf("%lld",&N); for(i=1;i<=N;i++) { scanf("%lld",&all[i]); sum[i]=all[i]+sum[i-1]; } for(i=1;i<=N;i++) ans=max(ans,F(0,i)); printf("%lld\n",ans); return 0; }

Compilation message (stderr)

segments.cpp: In function 'int main()':
segments.cpp:25:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   25 |     scanf("%lld",&N);
      |     ~~~~~^~~~~~~~~~~
segments.cpp:28:14: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   28 |         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...