Submission #143186

#TimeUsernameProblemLanguageResultExecution timeMemory
143186ShelbyKarte (COCI18_karte)C++11
60 / 120
33 ms2284 KiB
#include <bits/stdc++.h> #define MAXN 100000 using namespace std; int a[MAXN],ans[MAXN]; vector<int> sol; vector<int> v; int main() { int n,i,k,cnt,dif; scanf("%d%d",&n,&k); for(i=0;i<n;i++) scanf("%d",&a[i]); sort(a,a+n); cnt=0; for(i=0;i<n;i++) { if(a[i]>cnt) { cnt++; sol.push_back(a[i]); } else v.push_back(a[i]); } //reverse(sol.begin(),sol.end()); //for(i=0;i<sol.size();i++) printf("%d ",sol[i]); cnt--; if(k<=sol.size()) { int l=0,r=sol.size()-1; dif=sol.size()-k; while(l<r && dif!=0) { if(sol[l]<=cnt) { swap(sol[l],sol[r]); cnt--; dif--; } l++; r--; if(dif==0) break; } //cout << dif; if(dif!=0) printf("-1\n"); else { for(i=0;i<v.size();i++) printf("%d ",v[i]); reverse(sol.begin(),sol.end()); for(i=0;i<sol.size();i++) printf("%d ",sol[i]); } } else printf("-1\n"); return 0; }

Compilation message (stderr)

karte.cpp: In function 'int main()':
karte.cpp:36:5: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
 if(k<=sol.size())
    ~^~~~~~~~~~~~
karte.cpp:63:18: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         for(i=0;i<v.size();i++) printf("%d ",v[i]);
                 ~^~~~~~~~~
karte.cpp:67:18: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         for(i=0;i<sol.size();i++) printf("%d ",sol[i]);
                 ~^~~~~~~~~~~
karte.cpp:12:6: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
 scanf("%d%d",&n,&k);
 ~~~~~^~~~~~~~~~~~~~
karte.cpp:13:23: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
 for(i=0;i<n;i++) scanf("%d",&a[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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...