Cod sursa(job #1814328)

Utilizator ionut98Bejenariu Ionut Daniel ionut98 Data 23 noiembrie 2016 21:03:28
Problema Dame Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.87 kb
#include<fstream>
using namespace std;
ifstream f("dame.in");
ofstream g("dame.out");
int n,i,p,l,a[1005];
int main()
{
    f>>n;
    if(n==2)
      return g<<"1\n1 1",0;
    if(n==3)
      return g<<"2\n1 1\n3 2",0;
    g<<n<<'\n';
    for(i=2;i<=n;i+=2)
      a[++p]=i;
    if(n%6==3)
    {
        for(i=1;i<p;++i)
          a[i]=a[i+1];
        a[p]=2;
    }
    for(i=1;i<=p;++i)
      g<<i<<' '<<a[i]<<'\n';
    p=0;
    for(i=1;i<=n;i+=2)
      a[++p]=i;
    if(n%12==8)
      for(i=2;i<=p;i+=2)
        swap(a[i],a[i-1]);
    if(n%12==2)
    {
        swap(a[1],a[2]);
        for(i=3;i<p;++i)
          a[i]=a[i+1];
        a[p]=5;
    }
    if(n%6==3)
    {
        for(i=1,l=p-1;i<l;++i)
          a[i]=a[i+2];
        a[p-1]=1;
        a[p]=3;
    }
    for(i=1,l=n/2;i<=p;++i)
      g<<(l+i)<<' '<<a[i]<<'\n';
    return 0;
}