Pagini recente » Borderou de evaluare (job #151203) | Borderou de evaluare (job #1288781) | Borderou de evaluare (job #1439179) | Cod sursa (job #80495) | Cod sursa (job #239476)
Cod sursa(job #239476)
#include<stdio.h>
int i,k,este[1000],a[1000][1000],p,last=1,aux,mut;
int main ()
{este[0]=1;
int n,m;
freopen("tablete.in","r",stdin);
freopen("tablete.out","w",stdout);
scanf("%d%d",&n,&m);
for(i=1;i<=n;i++)
for(k=1;k<=n;k++)
{for(p=1;p<=n*n;p++)
if(este[p]==0 && p>a[i][k-1])
{ if(k!=m)
{
/* if(k==n && i>1)
{aux=a[i-1][n];
a[i-1][n]=p;
a[i][k]=aux;
este[p]=1;
break;
}
else*/
{
este[p]=1;
a[i][k]=p;
break;}
}
else
if(p%2==0)
{
este[p]=1;
a[i][k]=p;
break;
}}
}
for(i=1;i<=n*n;i++)
if(este[i]==0)
{ p=i;
break;
}
/* for(i=n;i>=1;i--)
for(k=n-1;k>=1;k--)
{ printf("%d %d\n",i,k);
if(p<a[i][k+1] && p>a[i][k-1])// && a[i][k]>a[n][n-1])
{a[n][n]=a[i][k];
a[i][k]=p;
for(i=1;i<=n;i++)
{ for(k=1;k<=n;k++)
printf("%d ", a[i][k]);
printf("\n");
}return 0;
}
else
printf("nu %d %d\n",i,k);
}
// for(i=1;i<=1000;i++)
/// printf("%d",este[p]);
*/i=a[n-1][n];
a[n-1][n]=p;
for(k=n;k>=1;k--)
{
if(a[n][k-1]<i && a[n][k+1]>i)
{
a[n][k+1]=a[n][k];
a[n][k]=i;
break;
}
else a[n][k+1]=a[n][k];
}
for(i=1;i<=n;i++)
{ for(k=1;k<=n;k++)
printf("%d ", a[i][k]);
printf("\n");
}
return 0;
}