Pagini recente » Cod sursa (job #1583325) | Cod sursa (job #1977574) | Cod sursa (job #2904985) | Cod sursa (job #2070511) | Cod sursa (job #867095)
Cod sursa(job #867095)
#include <fstream>
#include <math>
using namespace std;
int x[100],n, k1=0;
ifstream f("dame.in");
ofstream g("dame.out");
void afisare (int k)
{
int i;
for(i=1; i<=k; i++) g << i << " " << x[i] << "\n";
g << "\n";
}
int valid (int k)
{
int i;
if(k1!=1){
for(i=1; i<=k-1; i++)
{
if(x[k]==x[i]) return 0;
if(abs(x[i]-x[k])==abs(i-k)) return 0;
}
return 1;}
return 0;
}
void back (int k)
{
int i;
for (i=1; i<=n; i++)
{x[k]=i;
if (valid(k))
if(k==n) {afisare(k);k1=1;}
else back(k+1);
}
}
int main ()
{
f >> n;
back(1);
return 0;
}