Submission #682923

#TimeUsernameProblemLanguageResultExecution timeMemory
682923irmuunPrisoner Challenge (IOI22_prison)C++17
0 / 100
1 ms212 KiB
#include<bits/stdc++.h>
#include "prison.h"
using namespace std;
#define ll long long
vector<vector<int>> devise_strategy(int n){
	vector<vector<int>>s(26,vector<int>(n+1,0));
	int cur=2187;
	int add=1;
	for(int i=1;i<=n;i++){
		int x=i-1;
		s[0][i]=x/cur+add;
	}
	for(int i=1;i<=7;i++){
		add+=3;
		for(int j=i*3+1;j<=i*3+3;j++){
			s[j][0]=i%2;
			for(int k=1;k<=n;k++){
				int x=k-1;
				int bit=x%cur/(cur/3);
				int befBit=j-i*3-1;
				if(bit<befBit){
					s[j][k]=-(s[j][0]==0?1:2);
				}
				else if(bit>befBit){
					s[j][k]=-(s[j][0]==0?2:1);
				}
				else{
					s[j][k]=add+bit;
				}
			}
		}
		cur/=3;
	}
	return s;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...