使用endl,就暴零。。。
查看原帖
使用endl,就暴零。。。
324277
qywk99楼主2020/7/7 18:58

只有最后的cout和printf输出换行的区别。
有大佬知道是为何吗?

暴零代码。

#include<bits/stdc++.h>
using namespace std;
int d[15][15];
int main(){
	ios::sync_with_stdio(false),cin.tie(0),cout.tie(0);
	//freopen("in.txt","r",stdin);
	int n;
	cin>>n;
	int flag=1;
	int i,x,y;
	i=x=1;
	y=0;
	while(i<=n*n){

		while(y<n&&!d[x][y+1])d[x][++y]=i++;
		while(x<n&&!d[x+1][y])d[++x][y]=i++;
		while(y>1&&!d[x][y-1])d[x][--y]=i++;
		while(x>1&&!d[x-1][y])d[--x][y]=i++;

	}
	for(int l=1;l<=n;l++){
		for(int j=1;j<=n;j++){
			printf("%3d",d[l][j]);
		}
		cout<<endl;
	}
	return 0;
}

AC代码

#include<bits/stdc++.h>
using namespace std;
int d[15][15];
int main(){
	ios::sync_with_stdio(false),cin.tie(0),cout.tie(0);
	//freopen("in.txt","r",stdin);
	int n;
	cin>>n;
	int flag=1;
	int i,x,y;
	i=x=1;
	y=0;
	while(i<=n*n){

		while(y<n&&!d[x][y+1])d[x][++y]=i++;
		while(x<n&&!d[x+1][y])d[++x][y]=i++;
		while(y>1&&!d[x][y-1])d[x][--y]=i++;
		while(x>1&&!d[x-1][y])d[--x][y]=i++;

	}
	for(int l=1;l<=n;l++){
		for(int j=1;j<=n;j++){
			printf("%3d",d[l][j]);
		}
		printf("\n");
	}
	return 0;
}
2020/7/7 18:58
加载中...