社区讨论

求助!c++代码50分求调

P2239[NOIP 2014 普及组] 螺旋矩阵参与者 4已保存回复 3

讨论操作

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

当前回复
3 条
当前快照
1 份
快照标识符
@lo33l0dt
此快照首次捕获于
2023/10/24 00:13
2 年前
此快照最后确认于
2023/10/24 00:13
2 年前
查看原帖
5个点MLE,求调!
CPP
#include <bits/stdc++.h>
using namespace std;
int dx[4] = {0,1, 0,-1};
int dy[4] = {1,0,-1, 0};
long long n,i,j,k,d,a[10001][10001],x,y;
int main(){	
	cin>>n;
	for(i = 0; i<=n+1; i++){
		for(j = 0; j <= n+1; j++) a[i][j] = -1;
	}
	for(i = 1; i <= n; i++){
		for(j = 1; j <= n; j++) a[i][j] = 0;
	}
	i = 1; j = 1; d = 0;
	for(k = 1; k <= n*n; k++){
		a[i][j] = k;
		if (a[i+dx[d]][j+dy[d]] != 0) d = (++d) % 4;
		i = i + dx[d];
		j = j + dy[d];
	}
	cin>>x>>y;
	cout<< a[x][y];
	return 0;
}

回复

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

正在加载回复...