Cod sursa(job #1675996)

Utilizator PopoviciRobertPopovici Robert PopoviciRobert Data 5 aprilie 2016 17:56:49
Problema Tablete Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.83 kb
#include <cstdio>
#define MAXN 1000
char vf[MAXN*MAXN+1];
int mat[MAXN+1][MAXN+1];
int main(){
    FILE*fi,*fout;
    int i,j,n,k,b,e;
    fi=fopen("tablete.in" ,"r");
    fout=fopen("tablete.out" ,"w");
    fscanf(fi,"%d%d" ,&n,&k);
    b=e=1;
    for(i=1;i<=n;i++){
       for(j=1;j<k;j++){
          while(vf[b]==1)
             b++;
          mat[i][j]=b;
          vf[b]=1;
       }
       if(e==1)
         e=b;
        while(!(vf[e]==0&&e%2==0))
            e++;
        vf[e]=1;
        mat[i][k]=e;
    }
    b=1;
    for(i=1;i<=n;i++){
       for(j=k+1;j<=n;j++){
           while(vf[b]==1)
              b++;
           mat[i][j]=b;
           vf[b]=1;
       }
    }
    for(i=1;i<=n;i++){
       for(j=1;j<=n;j++)
          fprintf(fout,"%d " ,mat[i][j]);
        fprintf(fout,"\n");
    }
    fclose(fi);
    fclose(fout);
    return 0;
}