Pagini recente » Cod sursa (job #1328452) | Cod sursa (job #1692131) | Cod sursa (job #968312) | Cod sursa (job #2075385) | Cod sursa (job #2258453)
#include <fstream>
#include <vector>
#include <algorithm>
using namespace std;
ifstream cin ("12perm.in");
ofstream cout ("12perm.out");
unsigned int N, result; bool Ok = true;
vector <int> numbers;
int main()
{
cin >> N;
cin.close();
for(unsigned int index = 1; index <= N; index++)
numbers.push_back(index);
do
{
for(unsigned int index = 1; index < N && Ok; index++)
if(abs(numbers.at(index-1) - numbers.at(index)) >= 3)
Ok = false;
result += Ok;
Ok = true;
}
while(next_permutation(numbers.begin(), numbers.end()));
cout << (result % 1048576);
cout.close();
return 0;
}