This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "prison.h"
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
vector<ll> B={3, 3, 3, 3, 3, 3, 3, 3};
int digit(int x, int y){
y--;
for(int i=8; i>y; i--)
x/=B[i];
return x%B[y];
}
std::vector<std::vector<int>> devise_strategy(int n)
{
vector<vector<int>> s(42,vector<int>(n+1,0));
for(int i=0; i<42; i++)
{
ll t1=i;s[i][0]=t1%2;
ll digito = t1%10; t1/=10;
if(s[i][0]==0)
{
for(int j=1; j<=n; j++)
{
ll dig=digit(j,digito);
if(digito==0)
s[i][j]=digit(j,digito+1)*10+digito+1;
else if(dig>t1)
s[i][j]=-2;
else if(dig<t1)
s[i][j]=-1;
else
s[i][j]=digit(j,digito+1)*10+digito+1;
//cerr<<s[i][j]<<" ";
}
}
else
{
for(int j=1; j<=n; j++)
{
ll dig=digit(j,digito);
if(dig>t1)
s[i][j]=-1;
else if(dig<t1)
s[i][j]=-2;
else
s[i][j]=digit(j,digito+1)*10+digito+1;
//cerr<<s[i][j]<<" ";
}
}
//cerr<<"\n";
}
return s;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |