#include<fstream>
#include<cstring>
using namespace std;
ifstream fin("date.in");
ofstream fout("date.out");
char culori[100][20];
int n,p[100];
void citire()
{
fin>>n;
fin.get();
for(int i=1;i<=n;i++) fin.getline(culori[i],20);
}
void afis(int x[], int n)
{
for(int i=1;i<=n;i++) fout<<culori[x[i]]<<" ";
fout<<endl;
}
int bun(int x[], int k)
{
if (k>=2)
return strcmp(culori[x[2]],"galben")==0 || strcmp(culori[x[2]],"verde")==0;
else return 1;
}
void back(int x[], int n, int k)
{
int i;
for(i=1;i<=n;i++)
if(!p[i])
{
x[k]=i; p[i]=1;
if(bun(x,k)) if (k==3) afis(x,k);
else back(x,n,k+1);
p[i]=0;
}
}
int main()
{
int x[100];
citire();
back(x,n,1);
fin.close();
fout.close();
return 0;
}
|