求助(一种奇怪的构造方式)
查看原帖
求助(一种奇怪的构造方式)
206833
David207楼主2021/10/6 22:06

我是想构造一个这样的矩形

100 * * * * * …… * 
* 100 * * * * …… *
* * 100 * * * …… *
* * * * 100 * …… *
* * * * * 100 …… *
* * * * * * …… 100

然后用随机数生成1~99的整数,为啥不行

代码如下

#include<bits/stdc++.h>
using namespace std;
int t,T;
int f[1000][1000];
int main()
{
//	freopen("score.out","w",stdout);
//	srand(time(0));
	scanf("%d%d",&t,&T);
	for(int I=1;I<=T;I++)
	{
		int n,m;
//		memset(f,0,sizeof(f));
		scanf("%d%d",&n,&m);
		if(m==1&&n>1)
		{
			printf("NO\n");
			continue;
		}
		else
		{
			printf("YES\n");
			for(int i=1;i<=n;i++)
			{
				if(i%m==0)
				{
					for(int j=1;j<=m;j++)
					{
						int k=floor((rand()+100)%100)-1;
						f[i][j]=k>0?k:k+1;
					}
					f[i][m]=100;
				}
				else
				{
					for(int j=1;j<=m;j++)
					{
						if(i%m==j) f[i][j]=100;
						else
						{
							int k=floor((rand()+100)%100)-1;
							f[i][j]=k>0?k:k+2;
						}
					}
				}
				
			}
			for(int i=1;i<=n;i++)
			{
				for(int j=1;j<=m;j++)
				{
					printf("%d ",f[i][j]);
				}
				printf("\n");
			}
		}
	}
}
2021/10/6 22:06
加载中...