社区讨论

求助

P5461赦免战俘参与者 1已保存回复 0

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
0 条
当前快照
1 份
快照标识符
@m52ea1yz
此快照首次捕获于
2024/12/24 19:40
去年
此快照最后确认于
2025/11/04 12:24
4 个月前
查看原帖
代码如下,看不出问题所在。 恳请大佬指点。
C
#include<stdio.h>
#include<math.h>
void recur(int,int,int); 
int arr[1050][1050];
int main()
{
	int n,i,j,k;
	scanf("%d",&n);
	k=pow(2,n);
	for(i=0;i<k;i++){
		for(j=0;j<k;j++)
		arr[i][j]=1;
	}
	recur(0,0,k);
	for(i=0;i<k;i++){
		for(j=0;j<k;j++)
		printf("%d ",arr[i][j]);
	    printf("\n");
	}	
}
void recur(int x,int y,int l)
{
	int i,j;
	if(l==2){
	arr[x][y]=0;
	return;
	}
	for(i=x;i<l/2;i++){
		for(j=y;j<(l/2);j++){
			arr[i][j]=0;
		}
	}
	for(i=l/2;i<l;i++){
		for(j=l/2;j<l;j++)
		printf("%d ",arr[i][j]);
	    printf("\n");
	}
	recur(l/2+x,l/2+y,l/2);
	recur(x,l/2+y,l/2);
	recur(l/2+x,y,l/2);
}

回复

0 条回复,欢迎继续交流。

正在加载回复...