Cod sursa(job #234657)

Utilizator JoguTeodor Jogu Data 21 decembrie 2008 16:02:19
Problema Tablete Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.92 kb
#include<stdio.h>
  
   int main()  
   {  
   int n,k,j,i,t,u,p1,p,last;
   bool ok=false;
   FILE *in; 
   FILE *out; 
   in=fopen("tablete.in","r");  
   fscanf(in, "%d", &n);  
   fscanf(in, "%d", &k);
   out=fopen("tablete.out","w"); 
   
   if (k%2) p1=k+1;
   else p1=k;
   p=k;
   t=1;
   if ((k*n)%2) {u=k*n;ok=true;}
   else u=k*n+1;
   for (i=1;i<=n;i++)
   {
       for(j=1;j<=n;j++)
       { 
       if(j<k)
       {
       if (t==last) t++;
        fprintf(out,"%d ",t);t++;
       }
       
       if (j==k) {fprintf(out,"%d ",p1);p+=k;last=p1;if(p%2) p1=p+1; else p1=p;}
       else if(j>k)
       {
          if (ok) {if (u!=(k*n+1)) fprintf(out,"%d ",u);
          else fprintf(out,"%d ",++u);
          u++;}  
              else {fprintf(out,"%d ",u);u++;}
       } 
                        
        
       }
       fprintf(out,"\n");
   }             

   return 0;  
   }