Pagini recente » Cod sursa (job #2657697) | Cod sursa (job #1590922) | Cod sursa (job #1338732) | Cod sursa (job #1578337) | Cod sursa (job #1317427)
#include<fstream>
#include<algorithm>
using namespace std;
ifstream fin("damesah.in");
ofstream fout("damesah.out");
int V[20], n;
bool check() {
for(int i=1; i<=n; i++) {
for(int j=1; j<=n; j++) {
if((V[j] - V[i])*(V[j] - V[i]) == (j-i)*(j-i) && j-i)
return false;
}
}
return true;
}
int main() {
fin>>n;
bool first = 1;
int nrsol = 0;
for(int i=1; i<=n; i++) {
V[i] = i;
}
while(next_permutation(V+1, V+n+1)) {
if(check()) {
if(first) {
first = 0;
for(int i=1; i<=n; i++) fout<<V[i]<<" ";
}
nrsol++;
}
}
fout<<'\n'<<nrsol;
return 0;
}