Submission #750142

# Submission time Handle Problem Language Result Execution time Memory
750142 2023-05-29T07:08:07 Z MrM7md Zalmoxis (BOI18_zalmoxis) C++17
75 / 100
262 ms 93648 KB
#include <bits/stdc++.h>
using namespace std;
// #define int long long
#define endl '\n'
#define F first
#define S second
#define pb push_back
#define all(a) a.begin(),a.end()
const int N=1e6;
const int off=(1<<18);
const int MOD = 1e9+7;


vector<vector<int>>kk(N),ans(N);
signed main(){
   ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
   int n,k;
   cin >> n >> k;
   vector<array<int,3>> a(n);
   for(int i=0;i<n;i++){
      cin >> a[i][0];
      a[i][1]=a[i][2]=i;
   }
   vector<array<int,3>>v=a;
   for(int i=0;i<=29;i++){
      vector<array<int,3>>t;
      for(int j=0;j<v.size();j++){
         if(j+1<v.size()&&v[j][0]==v[j+1][0]&&v[j][0]==i){
            t.pb({v[j][0]+1,v[j][1],v[j+1][2]});

            j++;
         }
         else if(v[j][0]==i){
            t.pb({v[j][0]+1,v[j][1],v[j][2]});
            kk[v[j][2]].pb(v[j][0]);

             k--;
         }
         else{
            t.pb(v[j]);
         }
      }
      v=t;
   }
   for(int i=0;i<n;i++){
      for(auto it:kk[i]){
         ans[i].pb(it);
         while(k>0&&ans[i].back()>0){
            int x=ans[i].back()-1;
            ans[i].pop_back();
            ans[i].pb(x),ans[i].pb(x);
            k--;
         }
      }
   }
   int id=0;
   for(int i=0;i<n;i++){
      cout<<a[i][0]<<' ';
      for(auto it:ans[i])cout<<it<<' ';
   }
}

Compilation message

zalmoxis.cpp: In function 'int main()':
zalmoxis.cpp:27:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::array<int, 3> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   27 |       for(int j=0;j<v.size();j++){
      |                   ~^~~~~~~~~
zalmoxis.cpp:28:16: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::array<int, 3> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   28 |          if(j+1<v.size()&&v[j][0]==v[j+1][0]&&v[j][0]==i){
      |             ~~~^~~~~~~~~
zalmoxis.cpp:56:8: warning: unused variable 'id' [-Wunused-variable]
   56 |    int id=0;
      |        ^~
# Verdict Execution time Memory Grader output
1 Correct 235 ms 93128 KB Output is correct
2 Correct 246 ms 93500 KB Output is correct
3 Correct 250 ms 93220 KB Output is correct
4 Correct 249 ms 93292 KB Output is correct
5 Correct 255 ms 93372 KB Output is correct
6 Correct 220 ms 92848 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 239 ms 93188 KB Output is correct
2 Correct 232 ms 92772 KB Output is correct
3 Correct 241 ms 93372 KB Output is correct
4 Correct 244 ms 93520 KB Output is correct
5 Correct 239 ms 93292 KB Output is correct
6 Correct 243 ms 93108 KB Output is correct
7 Incorrect 262 ms 93432 KB Unexpected end of file - int32 expected
8 Incorrect 246 ms 93648 KB Unexpected end of file - int32 expected
9 Correct 228 ms 89392 KB Output is correct
10 Correct 166 ms 66332 KB Output is correct
11 Correct 191 ms 73112 KB Output is correct
12 Incorrect 26 ms 47188 KB Unexpected end of file - int32 expected
13 Incorrect 26 ms 47288 KB Unexpected end of file - int32 expected
14 Incorrect 25 ms 47228 KB Unexpected end of file - int32 expected