# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
1152514 | dzuizz | Trobojnica (COCI19_trobojnica) | C++20 | 0 ms | 0 KiB |
#include<bits/stdc++.h>
using namespace std;
#define int long long
int n;
map<string,bool> mp;
void f(string s){
if((int)s.size()==n){
mp[s]=1;
return;
}
string a,b;
for(int i=0;i<(int)s.size();++i){
int x=s[i]-'0';
if(x==1) a="23",b="32";
else if(x==2) a="13",b="31";
else a="12",b="21";
f(s.substr(0,i)+a+s.substr(i+1,s.size()-i-1));
f(s.substr(0,i)+b+s.substr(i+1,s.size()-i-1));
}
}
signed main(){
ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
cin>>n;
f("123");
f("132");
f("213");
f("231");
f("312");
f("321");
string S; cin>>S;
cout<<(mp[S]?"DA\n":"NE\n");
for(int i=0;i<N-3;++i) cout<<"1 1 1\n";
return 0;
}