Submission #1308936

#TimeUsernameProblemLanguageResultExecution timeMemory
1308936nguyenletrungData Transfer (IOI19_transfer)C++20
100 / 100
65 ms1728 KiB
#include "transfer.h"
#include<bits/stdc++.h>
#define ll long long
#define fi first
#define se second
#define ins insert
#define pb push_back
#define foru(i,a,b) for(int i=a;i<=b;i++)
#define ford(i,a,b) for(int i=a;i>=b;i--)
#define pii pair<int,int>
#define pll pair<ll,ll>
//#define int ll
using namespace std;


std::vector<int> get_attachment(std::vector<int> a) {
	
	int x=0;
	int n=a.size(),cl=0;
	for(int i=0;i<=n-1;i++)
	{
		if(a[i]==1)
		{
			x=x^(i+1);
			cl=cl^1;
		}
	}
	
	int k=0;
	
	if(n==63) k=6;
	else k=8;
	
	vector<int> ans;
	
	for(int i=0;i<k;i++) ans.pb((x>>(i))&1);
	ans.pb(cl);
	
	return ans;
//	return { 0, 1, 0 };
}


std::vector<int> retrieve(std::vector<int> data) 
{
	int sz=data.size();
	
	int A=0,B=0;
	
	if(sz<80) A=63,B=6;
	else A=255,B=8;
	
	int x=0,cl=0;
	
	vector<int> ans;
	
	for(int i=0;i<A;i++)
	{
		ans.pb(data[i]);
		if(data[i]==1)
		{
			x=x^(i+1);
			cl^=1;
		}
	}
	
	int y=0;
	for(int i=0;i<B;i++)
	{
		if(data[A+i]==1)
		{
			y|=(1<<(i));
		}
	}
	
	int CL=data[A+B];
	
	int s=x^y;
	int check=CL^cl;
	
	if(check==1&&s!=0)
	{
//		cout<<'?'<<endl;
//		cout<<'!'<<x<<' '<<y<<endl;
		if(s-1<A) ans[s-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)
      |     ^~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...