Să se genereze toate codurile de lungime n morse formate din '.' şi '-' astfel încât să nu existe două puncte alăturate.
#include<iostream>
using namespace std;
char x[100];
int n,nr=0;
int verif(int i)
{if(i>1 && x[i]=='.' && x[i-1]=='.')
return 0;
else return 1;
}
void back(int i)
{char j;
for(j='-';j<='.';j=j+'.'-'-')
{x[i]=j;
if(verif(i))
if(i==n)
{ cout<<x+1<<endl;nr++;}
else back(i+1);
}
}
int main()
{cin>>n;
x[n+1]=NULL;
back(1);
cout<<endl<<nr<<" solutii";
}
Niciun comentariu:
Trimiteți un comentariu