Submission #378646

#TimeUsernameProblemLanguageResultExecution timeMemory
378646daniel920712Gift (IZhO18_nicegift)C++14
18 / 100
2067 ms140416 KiB
#include <iostream> #include <stdio.h> #include <stdlib.h> #include <stack> #include <map> #include <vector> using namespace std; map < int , stack < int > > all; vector < pair < int , int > > que; int tt[1000005]; int main() { //freopen("aa.txt","w+t",stdout); int N,K,i,j,ans=0,x,y,a,b,t; scanf("%d %d",&N,&K); for(i=1;i<=N;i++) { scanf("%d",&t); all[t].push(i); ans+=t; tt[i]=t; } if(ans%K) printf("-1\n"); else { while(!all.empty()) { x=all.begin()->second.top(); a=all.begin()->first; all[a].pop(); if(prev(all.end())->second.empty()) { printf("-1\n"); return 0; } y=prev(all.end())->second.top(); b=prev(all.end())->first; all[b].pop(); //printf("1 %d %d\n",x,y); que.push_back(make_pair(x,y)); if(all[a].empty()) all.erase(a); if(a!=b&&all[b].empty()) all.erase(b); if(a!=1) all[a-1].push(x); if(b!=1) all[b-1].push(y); } printf("%d\n",ans/K); for(auto i:que) printf("1 %d %d\n",i.first,i.second); } return 0; }

Compilation message (stderr)

nicegift.cpp: In function 'int main()':
nicegift.cpp:15:15: warning: unused variable 'j' [-Wunused-variable]
   15 |     int N,K,i,j,ans=0,x,y,a,b,t;
      |               ^
nicegift.cpp:16:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   16 |     scanf("%d %d",&N,&K);
      |     ~~~~~^~~~~~~~~~~~~~~
nicegift.cpp:19:14: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   19 |         scanf("%d",&t);
      |         ~~~~~^~~~~~~~~
#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...