Cod sursa(job #2533321)
| Utilizator | Data | 28 ianuarie 2020 21:41:24 | |
|---|---|---|---|
| Problema | 12-Perm | Scor | 0 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva de probleme | Marime | 0.5 kb |
#include <fstream>
#include <algorithm>
#define mod 1048576
using namespace std;
ifstream cin("12perm.in");
ofstream cout("12perm.out");
int v[15000005];
int main()
{
int n,cnt=0;
cin>>n;
for(int i=1;i<=n;++i)
v[i]=i;
do
{
bool ok=0;
for(int i=2;i<=n and ok==0;++i)
if(v[i]-v[i-1]<-2 or v[i]-v[i-1]>2)
ok=1;
cnt+=ok;
cnt%=mod;
}while(next_permutation(v+1,v+n+1));
cout<<cnt;
return 0;
}
