【牛客训练记录】2024牛客国庆集训派对day3

赛后反思

还是只开出来一题TAT

H题

构造一个01矩阵,想要横竖斜三个数都不同,好像方法有很多,我们考虑交错着放

01010101
10101010
01010101

上面这种长度为 \(1\) 的 01 显然不行,因为斜着也算,所以我们考虑构造长度为 \(2\) 的 01,例如 0011 1100 这样

00110011
11001100
00110011
11001100

构造 0011 和 1100 这样循环即可

#include <bits/stdc++.h>
#define int long long

using namespace std;

string s = "0011";
string ss= "1100";

void solve(){
	int n,m; cin>>n>>m;	
	for(int i = 0;i<n;i++){
		for(int j = 0;j<m;j++){
			if(i&1) cout<<s[j%4];
			else cout<<ss[j%4];
		}
		cout<<endl;
	}
}

signed main(){
	// int T; cin>>T; while(T--)
	solve();
	return 0;
}
posted @ 2024-10-04 12:54  MNNUACM_2024ZY  阅读(15)  评论(0编辑  收藏  举报