Cod sursa(job #1839915)

Utilizator wilson182Alexandrina Panfil wilson182 Data 3 ianuarie 2017 16:42:45
Problema Problema Damelor Scor 90
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include<bits/stdc++.h>
using namespace std;
int n, s[20], rs=0, dp[100], ds[100], c[100];

void back(int l){
	int i, j;
	if (l==n+1){
		if (rs<1) {
			for(i=1; i<=n; i++) printf("%d ", s[i]);
			printf("\n");
		}
		++rs;;
	} else for(i=1; i<=n; i++) if (!dp[i-l+n+1] && !ds[l+i] && !c[i]){
		dp[i-l+n+1] = ds[l+i] = c[i] = 1;
		s[l]=i;
		back(l+1);
		dp[i-l+n+1] = ds[i+l] = c[i] = 0; 
	}
}
int main(){
	freopen("damesah.in", "r", stdin);
	freopen("damesah.out", "w", stdout);
	scanf("%d", &n);
	back(1);
	printf("%d", rs);
	return 0;
}