/**
* بسم الله الرحمن الرحيم *
﴾ رَبِّ اشْرَحْ لِي صَدْرِي * وَيَسِّرْ لِي أَمْرِي * وَاحْلُلْ عُقْدَةً مِّن لِّسَانِي * يَفْقَهُوا قَوْلِي ﴿
*/
/// author : "ASGA"
#pragma GCC optimize("Ofast")
#include <bits/stdc++.h>
using namespace std;
using ll=long long;
#include"prison.h"
vector<vector<int>>devise_strategy(int n){
int x=(__lg(n)+1)*3-1;
vector<vector<int>>a(x+1,vector<int>(n+1));
int b=__lg(n)+1,c=0;
for(int i=0;i<=x;i+=2){
array<int,2>rt={-1,-2};
a[i][0]=c;
if(c==0){
b--;
for(int j=1;j<=n;j++)a[i][j]=i+1+((j>>b)&1);
i--;
}
else{
a[i+1][0]=c;
for(int j=1;j<=n;j++){
int bt=(j>>b)&1;
a[i][j]=(bt?rt[c^1]:i+2);
a[i+1][j]=(bt?i+2:rt[c]);
}
}
c^=1;
}
for(auto&i:a)for(int&j:i)j=min(j,x);
return a;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |