Submission #1020951

#TimeUsernameProblemLanguageResultExecution timeMemory
1020951MrAndriaDEL13 (info1cup18_del13)C++14
15 / 100
11 ms1372 KiB
#include <bits/stdc++.h> using namespace std; #define ff first; #define ss second #define pb push_back //#define int long long int t,n,q,b1,l; int a[200005]; vector <int> v,v2; int main(){ cin>>t; while(t--){ cin>>n>>q; for(int i=1;i<=q;i++){ cin>>a[i]; } v2.clear(); v.clear(); a[q+1]=n+1; b1=0; for(int i=1;i<=q+1;i++){ if(a[i]-a[i-1]-1==0){ v.pb(0); }else{ if((a[i]-a[i-1]-1)%2==0){ v.pb(2); }else{ v.pb(1); } } } for(int i=1;i<v.size();i++){ v[i]-=v[i-1]; if(v[i]<0){ b1=1; } } if(v.back()!=0 or b1){ cout<<-1<<endl; continue; } for(int i=1;i<=q+1;i++){ if(a[i]-a[i-1]-1==0){ }else{ if((a[i]-a[i-1]-1)%2==0){ for(int j=1;j<=(a[i]-a[i-1]-3)/2;j++){ v2.pb((a[i]+a[i-1])/2); } }else{ for(int j=1;j<=(a[i]-a[i-1]-2)/2;j++){ // cout<<"YES"<<endl; v2.pb((a[i]+a[i-1])/2); } } } } for(int i=1;i<v.size();i++){ for(int j=1;j<=v[i-1];j++){ v2.pb(a[i]); } } if(v2.size()>(n-q)/2){ assert(0); } cout<<v2.size()<<endl; for(int i=0;i<v2.size();i++){ cout<<v2[i]<<" "; } cout<<endl; // b1=0; // v.clear(); // l=1; // for(int i=1;i<=q;i++){ // for(int j=1;j<=a[i]-l;j++){ // v.pb(a[i]); // } // l=2*a[i]-l+1; // if(i!=q){ // if(a[i+1]<l){ // b1=1; // break; // } // }else{ // if(l!=n+1){ // b1=1; // break; // } // } // } // if(b1){ // cout<<-1<<endl; // }else{ // cout<<v.size()<<endl; // for(int i=0;i<v.size();i++){ // cout<<v[i]<<" "; // } // cout<<endl; // } } }

Compilation message (stderr)

del13.cpp: In function 'int main()':
del13.cpp:32:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   32 |         for(int i=1;i<v.size();i++){
      |                     ~^~~~~~~~~
del13.cpp:57:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   57 |         for(int i=1;i<v.size();i++){
      |                     ~^~~~~~~~~
del13.cpp:62:21: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   62 |         if(v2.size()>(n-q)/2){
      |            ~~~~~~~~~^~~~~~~~
del13.cpp:66:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   66 |         for(int i=0;i<v2.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...