Cod sursa(job #2214617)

Utilizator miruna1224Floroiu Miruna miruna1224 Data 19 iunie 2018 14:46:55
Problema Tablete Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.03 kb
#include <iostream>
#include <fstream>
#include <cstdlib>

using namespace std;

int main()
{
    int n ,k ,**m, i, ind,a, j;

    ifstream in("tablete.in");
    in>>n>>k;
    in.close();

    ofstream out("tablete.out");
    m = new int* [n+3];

    for(i=1; i<=n; i++)
        m[i] = new int [n+3];

    ind  = 0;
    a= 1;
    for(i=1; i<=n; i++)
    {
        if(ind != 0)
        {
            m[i][1] = ind;
            ind =0;
        }
        else
        {
            m[i][1] = a++;
        }
        for(j=2; j<=n; j++)
        {
            if(j==k && a%2 != 0)
                ind = a++;
            m[i][j] = a++;
        }
    }
    if(ind != 0)
    {
        for(j=n; j>1; j--)
            m[n][j] = m[n][j-1];
        m[n][1] = m[1][n];
        m[1][n] = ind;
    }

    for(i=1; i<=n; i++)
    {
        for(j=1; j<=n; j++)
            out<<m[i][j]<<" ";
        out<<"\n";
    }
    out.close();


    for(i=0; i<=n; i++)
        free(m[i]);
    free(m);
    return 0;
}