//https://www.acmicpc.net/problem/6603 #include <iostream> |
using namespace std; |
int lotto[7]; |
int S[14]; |
bool visit[13]={0,}; |
int k; |
bool chk; |
void dfs(int n,int cnt) |
{ |
visit[n]=1; |
for(int i=1; ;i++) |
{ |
int nn=n+i; |
lotto[cnt]=S[nn]; |
if(cnt==6) |
{ |
for(int i=0; i<6; i++) cout << lotto[i] << " "; |
cout << endl; |
break; |
} |
if(nn>k) break; |
if(!visit[nn] && nn<=k) {dfs(nn, cnt+1);} |
} |
visit[n]=0; |
} |
int main() |
{ |
while(1) |
{ |
cin >> k; |
if(!k) break; |
for(int i=1; i<=k; i++) cin >> S[i]; |
dfs(0,0); |
cout << endl; |
} |
} |
'알고리즘 문제 풀이 > 1DP_과제(~180615)' 카테고리의 다른 글
171214_9933_민균이의 비밀번호 (0) | 2017.12.14 |
---|---|
171213_2789_유학 금지 (0) | 2017.12.13 |
171211_5586_JOI와 IOI (0) | 2017.12.11 |
171210_5218_알파벳 거리 (0) | 2017.12.10 |
171210_11054_가장 긴 바이토닉 부분 수열 (0) | 2017.12.10 |