Pagini recente » Cod sursa (job #2983931) | Cod sursa (job #301192)
Cod sursa(job #301192)
#include<fstream.h>
int n, a[1010], k, i, poz, aux, j, poz1, poz2;
int main()
{
ifstream f("dame.in");
ofstream g("dame.out");
f>>n;
f.close();
i = 2;
while(i <= n)
{
k++;
a[k] = i;
i += 2;
}
if(n%12 == 3 || n%12 == 9)
{
for(i = 1 ; i <= k-1 ; i++)
a[i] = a[i+1];
a[k] = 2;
}
i = 1;
while(i <= n)
{
k++;
a[k] = i;
i += 2;
}
if(n%12 == 8)
{
for(i = 1 ; i <= k ; i++)
if(a[i]%2 == 1)
{
poz = i;
i = k+1;
}
while(a[poz]%2 == 1)
{
aux = a[poz];
a[poz] = a[poz+1];
a[poz+1] = aux;
poz = poz+2;
}
}
else
if(n%12 == 3 || n%12 == 9)
{
for(i = 1; i <= n; i++)
if(a[i] == 1)
{
for(j = i; j < k ; j++)
a[j] = a[j+1];
a[k] = 1;
}
for(i = 1; i <= k; i++)
if(a[i] == 3)
{
for(j = i; j < k ; j++)
a[j] = a[j+1];
a[k] = 3;
}
}
else
if(n%12 == 2)
{
for(i = 1 ; i <= k ; i++)
if(a[i] == 1)
poz1 = i;
else
if(a[i] == 3)
poz2 = i;
aux=a[poz1];
a[poz1] = a[poz2];
a[poz2] = aux;
for(i = 1 ; i <= k ; i++)
if(a[i] == 5)
{
for(j = i ; j < k ; j++)
a[j] = a[j+1];
a[k] = 5;
}
}
g<<k<<"\n";
for(i = 1 ; i <= k ; i++)
g<<i<<" "<<a[i]<<"\n";
return 0;
}