80分求助,各位大佬
查看原帖
80分求助,各位大佬
1403564
lvcb248楼主2024/8/29 15:37
#include<stdio.h>
#include<math.h>
int aa[2000000];
int main()
{
	int n=0,i;
    int e=0,u=0;
    int d,b,x,x1;
    int u1,d1,u2=0;
    int h,h1;
	scanf("%d",&n);
    int a[n+1][n+1];
    for(i=1;i<=n;i++)
    {
    	for(u=1;u<=n;u++)
    	{
    		a[i][u]=0;
		}
	}
   for(i=1;e<n*n;i++)
   {
   	scanf("%d",&aa[i]);
   	e=e+aa[i];
   	u2++;
   }
   e=0; 
   for(i=1;i<=u2;i++)
   {
   	    e=e+aa[i];
   	    b=e-aa[i]+1;
   	    if(i%2==0)
   	    {
   	     	if(n-e>=0)
   	     	{  
				u=b;
   	     		for(;u<=e;u++)
   	     		{
   	     		   	a[1][u]=1;
				}
	        }else
		    {
				u=b/n+1;
				d=e/n+1;
				u1=(b)%n;
				d1=e%n;
				h1=u1;
                
                    if(d-u>0)
					{
					   x=u+1;
					   x1=1;
					   for(;x<=d-1;x++)
					   {
					   	  for(;x1<=n;x1++)
					   	  {
					   	     a[x][x1]=1; 	
				          }
					   }
					   
					   for(;h1<=n;h1++)
					   {
					   	  a[u][h1]=1;
					   }
					   x1=1;
					   for(;x1<=d1;x1++)
					   {
					   	  a[d][x1]=1;
					   }
						
					}else
					{
						for(;h1<=d1;h1++)
						{
							a[u][h1]=1;
						}
					}
                
			}
	    }
   	
   }
   for(i=1;i<=n;i++)
   {
   	   u=1;
   	  for(;u<=n;u++)
   	  {
          if(u==n)
          {
          	printf("%d\n",a[i][u]); 
		  }else
		  {
		  	printf("%d",a[i][u]); 
		  }
	  }
   }
   
	return  0;
 } 
2024/8/29 15:37
加载中...