Cod sursa(job #2391358)

Utilizator ezioconnorVlad - Gabriel Iftimescu ezioconnor Data 28 martie 2019 19:42:37
Problema Dame Scor 25
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.83 kb
#include <fstream>

using namespace std;

ifstream in("dame.in");
ofstream out("dame.out");

int main()
{
    int n;
    in >> n;
    if (n == 3)
    {
        out << 2 << '\n' << 1 << " " << 1 << '\n' << 2 << " " << 3;
        return 0;
    }
    if (n <= 2)
    {
        out << 1 << '\n' << 1 << " " << 1;
        return 0;
    }
    else
    {
        if (n % 2 == 1)
        {
            out << n << '\n';
            int x = 1, y = 2, nr;
            bool ok = 0;
            for (int i = 1; i <= n; ++i)
            {
                if (y > n)
                {
                    ok = 1;
                    y = 3;
                    nr = 0;
                }
                if (x <= n && y <= n)
                    out << x << " " << y << '\n';
                ++x;
                if (ok)
                {
                    ++nr;
                    if (nr % 2 == 1)
                        y -= 2;
                    else
                        y += 6;
                }
                else
                    y += 2;
            }
        }
        else
        {
            out << n << '\n';
            int x = 1, y = 2, nr;
            bool ok = 0;
            for (int i = 1; i <= n; ++i)
            {
                if (y > n)
                {
                    ok = 1;
                    y = 3;
                    nr = 0;
                }
                if (x <= n && y <= n)
                    out << x << " " << y << '\n';
                ++x;
                if (ok)
                {
                    ++nr;
                    if (nr % 2 == 1)
                        y -= 2;
                    else
                        y += 6;
                }
                else
                    y += 2;
            }
        }
    }
    return 0;
}