Codeforces Round #632 (Div. 2)(A+B)
程序员文章站
2022-03-25 22:54:04
A. Little Artem 题意:这一题比较简单,简单说一下就是给你一个n*m的矩阵,要你去涂色,其中‘B’代表黑色,‘W’代表白色,要求是两者符合这个等式:B=W+1。 题解:简单签到题,但我在比赛的时候用了复杂的方法,所以耗的时间较长,赛后看到别人的解法,真的是醍醐灌顶。 代码: 法一: # ......
题意:这一题比较简单,简单说一下就是给你一个n*m的矩阵,要你去涂色,其中‘b’代表黑色,‘w’代表白色,要求是两者符合这个等式:b=w+1。
题解:简单签到题,但我在比赛的时候用了复杂的方法,所以耗的时间较长,赛后看到别人的解法,真的是醍醐灌顶。
代码:
法一:
#include <iostream> #include <cstdio> #include <cstring> #include <algorithm> using namespace std; const int nk_max = 8 + 5; const int inf = 0x3fffffff; int main() { int t; int n,m; cin>>t; while(t--) { int b,w; cin>>n/*行数*/>>m/*列数*/; int tot=n*m; char ptr[150][150]; if(tot%2==0) { b=tot/2; w=b-1; } else { b=(tot/2)+1; w=tot-b; } //涂色 for(int i=1; i<=n; i++) { for(int j=1; j<=m; j++) { if(i%2!=0&&j%2==0) { ptr[i][j]='w'; } if(i%2!=0&&j%2!=0) { ptr[i][j]='b'; } if(i%2==0&&j%2!=0) { ptr[i][j]='w'; } if(i%2==0&&j%2==0) { ptr[i][j]='b'; } } } // cout<<b<<" "<<w<<"==="<<endl; if(tot%2==0) {//判断奇偶性,如果是偶数的话 if(ptr[n][m]=='b') { ptr[n][m-1]='b'; } else { ptr[n][m]='b'; } } for(int i=1; i<=n; i++) { for(int j=1; j<=m; j++) { cout<<ptr[i][j]; } cout<<endl; } } return 0; }
法二:
这个的思路比较简单,代码也比较简洁;
#include <bits/stdc++.h> using namespace std; signed main() { ios::sync_with_stdio(false); int t,n,m; cin>>t; while(t--) { cin>>n>>m; for(int i=1;i<=n;i++) { for(int j=1;j<=m;j++) { if(i==1 && j==1) cout<<"w"; else cout<<"b"; } cout<<endl; } } }
转载自:https://www.cnblogs.com/mollnn/p/12664323.htmlb. kind antonb. kind antonb. kind anton
题意:给你两个字符串,其中a只包括-1,0,1;b数组的组成没有限制,先选定i,j,其中i<j,对a数组进行操作,aj=ai+aj,,注意,此时(i<j),现在要你判断a数组是否可以通过变化变化为数组a。
题解:这一题如果靠简单的模拟来做的话,会超时,这里我们用map来记录a中出现的每一个元素出现的次数,之后我们从后往前遍历判断每一个元素,具体实现看代码。
#include<iostream> #include<cstring> #include<algorithm> #include<map> int a[100010]={0}; int b[100010]={0}; using namespace std;; int main(){ int t,n; cin>>t; map<int,int> mp; while(t--){ mp.clear(); scanf("%d",&n); for(int i=1;i<=n;i++){ cin>>a[i]; mp[a[i]]++; } for(int i=1;i<=n;i++){ cin>>b[i]; }//数据输入完毕,下面开始处理数据 int f=1; for(int i=n;i>=1;i--){ mp[a[i]]--; if(a[i]==b[i]){ continue; } if(a[i]<b[i]){ if(!mp[1]){ f=0; break; } } if(a[i]>b[i]){ if(!mp[-1]){ f=0; break; } } } if(f){ cout<<"yes"<<endl; }else{ cout<<"no"<<endl; } } return 0; }
推荐阅读
-
Codeforces Round #595 (Div. 3)D1D2 贪心 STL
-
Codeforces Round #655 (Div. 2) A. Omkar and Completion
-
Codeforces Round #656 (Div. 3)D. a-Good String(递归+dfs)
-
Codeforces Round #487 (Div. 2)
-
CodeForces 1324 - Codeforces Round #627 (Div. 3)
-
Codeforces Round #649 (Div. 2)-B. Most socially-distanced subsequence(思维)
-
Codeforces Round #649 (Div. 2) C-Ehab and Prefix MEXs
-
Educational Codeforces Round 71 (Rated for Div. 2)E. XOR Guessing
-
Codeforces Round #659 (Div. 2) A. Common Prefixes(字符串,思维)
-
Codeforces Round #610 (Div. 2)