Submission #546068

#TimeUsernameProblemLanguageResultExecution timeMemory
546068andrei_boaca수열 (APIO14_sequence)C++14
0 / 100
28 ms1844 KiB
#include <bits/stdc++.h> using namespace std; typedef long long ll; ll n,k,v[100005],dp[100005][205],s[100005],ans=1e18,maxim; vector<int> sol; int main() { cin>>n>>k; k++; for(int i=1;i<=n;i++) { cin>>v[i]; s[i]=s[i-1]+v[i]; maxim=max(maxim,v[i]); } ll avg=max(maxim,s[n]/k); ll steps=200; while(steps--) { vector<int> poz; ll last=0; ll rez=0; for(int i=1;i<=n;i++) if(i==n||(s[i]-s[last]>avg&&poz.size()<k)) { ll val=s[i-(i<n)]-s[last]; val*=val; rez+=val; poz.push_back(i-(i<n)); last=i-(i<n); } if(poz.size()==k) { if(rez<ans) { ans=rez; sol=poz; } } avg++; } cout<<(s[n]*s[n]-ans)/2<<'\n'; for(int i=0;i+1<sol.size();i++) cout<<sol[i]<<' '; return 0; }

Compilation message (stderr)

sequence.cpp: In function 'int main()':
sequence.cpp:25:51: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'll' {aka 'long long int'} [-Wsign-compare]
   25 |             if(i==n||(s[i]-s[last]>avg&&poz.size()<k))
      |                                         ~~~~~~~~~~^~
sequence.cpp:33:22: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'll' {aka 'long long int'} [-Wsign-compare]
   33 |         if(poz.size()==k)
      |            ~~~~~~~~~~^~~
sequence.cpp:44:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   44 |     for(int i=0;i+1<sol.size();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...
#Verdict Execution timeMemoryGrader output
Fetching results...