简单构造即可。
#includeusing namespace std; typedef long long ll; int main() { int t; cin>>t; while(t--) { ll u,v; cin>>u>>v; cout< B 因为题目要求的是要让相邻的格子颜色不同,所以我们可以看作每次取出三块格子,中间那块涂成蓝色,这样可以让最后得到的蓝色格子最少。但现在还有一个问题,就是如果每次取三个,到最后可能会有剩余,这样的话蓝色格子数就需要加上1个,所以我们可以将总格子数加上2,这样就算有剩余我们也可以加上剩余的蓝色格子数。
#includeusing namespace std; int main() { int n; cin>>n; while(n--) { int x,y; cin>>x>>y; cout<<(x*y+2)/3< C 这题直接暴力模拟就可以了。
#include#include using namespace std; int a[110],b[110]; int main() { int t; cin>>t; while(t--) { int n; cin>>n; for(int i=0;i >a[i]; for(int j=0;j >b[j]; sort(a,a+n); sort(b,b+n); int f=1; for(int i=0,j=0;i b[j]) { f=0; break; } } if(f)cout<<"YES"< 欢迎分享,转载请注明来源:内存溢出
评论列表(0条)