Submission #1369425

#TimeUsernameProblemLanguageResultExecution timeMemory
1369425eyadoozData Transfer (IOI19_transfer)C++20
100 / 100
40 ms1724 KiB
#include<bits/stdc++.h>
// #include"transfer.h" 
using namespace std;

typedef long long ll;
typedef pair<int, int> pii;
typedef pair<ll, ll> pll;

#define pb push_back
#define all(x) (x).begin(), (x).end()
#define sz(x) (int) (x).size()
#define endl '\n'

vector<int> get_attachment(vector<int> source){
    vector<int> s;
    int x=0, y=0;
    for(int i = 0;i < sz(source);i++) x^=(source[i]?i+1:0), y^=source[i];
    
    if(sz(source)<=63) for(int j=0;j<6;j++) s.pb((x>>j)&1);
    else if(sz(source)<=255) for(int j=0;j<8;j++) s.pb((x>>j)&1);
    s.pb(y);
    return s;
}
vector<int> retrieve(vector<int> data) {
    int n=sz(data)-7, x=0, xo=0, sp=0;  
    if(sz(data)>=63+8) n=sz(data)-9;
    for(int i = 0;i < n;i++) x^=data[i], xo^=(data[i]?i+1:0);
    for(int i=n;i<sz(data)-1;i++) if(data[i]==1) sp|=(1ll<<(i-n));
    int f=data.back(), y=xo^sp;
    vector<int> ans;
    for(int i = 0;i < n;i++) ans.pb(data[i]);
    if(xo==sp) return ans;
    if(x!=f) ans[y-1]^=1;
    return ans;
}

Compilation message (stderr)

grader.cpp: In instantiation of 'void shuffle(std::vector<T>&) [with T = Scenario]':
grader.cpp:200:10:   required from here
grader.cpp:28:23: warning: 'void std::random_shuffle(_RAIter, _RAIter) [with _RAIter = __gnu_cxx::__normal_iterator<Scenario*, vector<Scenario> >]' is deprecated: use 'std::shuffle' instead [-Wdeprecated-declarations]
   28 |         random_shuffle(v.begin(), v.end());
      |         ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/13/algorithm:61,
                 from grader.cpp:8:
/usr/include/c++/13/bits/stl_algo.h:4581:5: note: declared here
 4581 |     random_shuffle(_RandomAccessIterator __first, _RandomAccessIterator __last)
      |     ^~~~~~~~~~~~~~
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...