A

很简单的一个模拟,只要前面的数字有两个以上就能合成后面的,我们进行一遍合成看能不能出现2048就可以了。

#include<cstdio>
#include<cstring>
#include<cstdlib>
#include<algorithm>
#include<iostream>
#include<cmath>
#include<climits>
#include<queue>
#include<vector>
#include<set>
#include<map>
using namespace std;typedef long long ll;
const int INF=0x3f3f3f3f;
const int MAXN=1e2+5;
int a[40];
int n;int deal(int x)
{int ret=0;while(x/2){ret++;x/=2;}return ret;
}int main()
{int T,tmp;scanf("%d",&T);while(T--){memset(a,0,sizeof(a));scanf("%d",&n);for(int i=0;i<n;i++){scanf("%d",&tmp);a[deal(tmp)]++;}for(int i=1;i<=11;i++){a[i]+=a[i-1]/2;}if(a[11]>0){printf("YES\n");}else{printf("NO\n");}}return 0;
}

B

要在棋盘上放上两种马,让他们能够相互攻击的数目最大,问如何放。
当时做的时候想的是先DFS一遍,然后对剩下的再进行DFS,然后过了,就没有多想。刚才发现只要错开排列就可以。

    #include<cstdio>#include<cstring>#include<cstdlib>#include<algorithm>#include<iostream>#include<cmath>#include<climits>#include<queue>#include<vector>#include<set>#include<map>using namespace std;typedef long long ll;const int INF=0x3f3f3f3f;const int MAXN=1e2+5;int mp[MAXN][MAXN];int n;const int drc[8][2]={1,2,1,-2,2,1,2,-1,-1,2,-1,-2,-2,1,-2,-1};void dfs(int x,int y,int cur){int u,v;if(mp[x][y]) return;int tmp=(cur==1)?2:1;mp[x][y]=tmp;for(int i=0;i<8;i++){u=x+drc[i][0]; v=y+drc[i][1];if(u<1||u>n || v<1||v>n) continue;dfs(u,v,tmp);}}int main(){while(~scanf("%d",&n)){memset(mp,0,sizeof(mp));for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){if(!mp[i][j]){dfs(i,j,2);}}}for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){printf("%c",mp[i][j]==1?'W':'B');}printf("\n");}}return 0;}
#include<cstdio>
#include<cstring>
#include<cstdlib>
#include<algorithm>
#include<iostream>
#include<cmath>
#include<climits>
#include<queue>
#include<vector>
#include<set>
#include<map>
using namespace std;typedef long long ll;
const int INF=0x3f3f3f3f;
const int MAXN=105;int n;int main()
{int cmd=0;while(~scanf("%d",&n)){for(int i=0;i<n;i++){cmd=i%2;for(int j=0;j<n;j++){printf("%c",cmd==0?'W':'B');cmd=!cmd;}printf("\n");}}return 0;
}

C

首先我们分析最多能组多少对,最多能组肯定是所有的人每三个人一组,但是我们还有其他限制要求,如果满足要求的人比最多能够组成的队还多显然所有的队都能组成。如果满足要求的人没有最多组成的队的人数多就是满足要求的组数。

#include<cstdio>
#include<cstring>
#include<cstdlib>
#include<algorithm>
#include<iostream>
#include<cmath>
#include<climits>
#include<queue>
#include<vector>
#include<set>
#include<map>
using namespace std;typedef long long ll;
const int INF=0x3f3f3f3f;
const int MAXN=1e5+5;
int a,b,c,s;
int ans1,ans2;
int ans;int main()
{int T;scanf("%d",&T);while(T--){scanf("%d%d%d",&a,&b,&c);s=(a+b+c)/3;ans1=min(a,b);if(ans1>=s){ans=s;}else{ans=ans1;}printf("%d\n",ans);}return 0;
}

Educational Codeforces Round 73 (Rated for Div. 2)相关推荐

  1. Educational Codeforces Round 73 (Rated for Div. 2) F. Choose a Square 线段树 + 二维转一维

    传送门 文章目录 题意: 思路: 题意: 给你nnn个点(xi,yi)(x_i,y_i)(xi​,yi​),每个点有个价值cic_ici​,现在你可以框一个正方形,要求左下角和右上角的坐标(x,y)( ...

  2. Educational Codeforces Round 73 (Rated for Div. 2) E. Game With String 思维博弈 好题(2500)

    传送门 文章目录 题意: 思路: 题意: 思路: 我们将每一段...拿出来看成若干段,将其分成以下四种情况: (1)len<b(1)len<b(1)len<b (2)b≤len< ...

  3. Educational Codeforces Round 73 (Rated for Div. 2) Make The Fence Great Again dp + 结论

    传送门 文章目录 题意: 思路: 题意: 思路: 首先证明一个结论:一个数最多被加两次. 首先假设a[i]=a[i−1]a[i]=a[i-1]a[i]=a[i−1]或a[i]=a[i+1]a[i]=a ...

  4. Educational Codeforces Round 90 (Rated for Div. 2)(A, B, C, D, E)

    Educational Codeforces Round 90 (Rated for Div. 2) Donut Shops 思路 分三种情况: a==c/ba == c / ba==c/b这个时候两 ...

  5. Educational Codeforces Round 114 (Rated for Div. 2) (A ~ F)全题解

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Educational Codeforces Round 114 (Rated for Div. 2) ...

  6. Educational Codeforces Round 106 (Rated for Div. 2)(A ~ E)题解(每日训练 Day.16 )

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 目录 Educational Codeforces Round 106 (Rated for Div. ...

  7. Educational Codeforces Round 37 (Rated for Div. 2) 1

    Educational Codeforces Round 37 (Rated for Div. 2) A.Water The Garden 题意:Max想给花园浇水.花园可被视为长度为n的花园床,花园 ...

  8. Educational Codeforces Round 89 (Rated for Div. 2)(A, B, C, D)

    Educational Codeforces Round 89 (Rated for Div. 2) A. Shovels and Swords 思路 题意非常简单,就是得到最多的物品嘛,我们假定a, ...

  9. Educational Codeforces Round 114 (Rated for Div. 2) D. The Strongest Build 暴力 + bfs

    传送门 文章目录 题意: 思路: 题意: 你有nnn个装备槽,每个槽里面有cic_ici​个力量加成,对于每个槽只能选一个力量加成,现在给你mmm个力量组合[b1,b2,...,bn][b_1,b_2 ...

最新文章

  1. Android ndk 安装教程 以及环境变量配置
  2. html 在weblogic 上编译报错,HTTL在weblogic环境下,JDK版本1.7情况下。出现编译错误。...
  3. python导入其他py文件-Python如何import其它.py文件及其函数
  4. html 监听input输入框的值,利用原生JS实时监听input框输入值
  5. [游戏模版18] Win32 五子棋
  6. 解密春晚微信红包十亿级并发压力
  7. HDU - 2196 Computer(树形dp)
  8. halcon/c++接口基础 之异常处理
  9. prototype.js1.5平面结果导读图
  10. char*,const char*和string的相互转换
  11. c语言实现bitmap的基本操作
  12. 计算器计算经纬距离_造价人如何熟练运用计算器来做题?
  13. opencv学习之路(9)、对比度亮度调整与通道分离
  14. Per-cpu 变量
  15. 一文读完C语言基础语法
  16. 元宇宙8大创业方向:虚拟偶像、数字孪生…
  17. 移动政企Java线上测评_(重要)如何锻炼训练,确保通过企业线上测评 在线测评和职业性格测评...
  18. 用JavaScript时钟特效
  19. 古天乐一哭,电影宣传又跪了下来
  20. 随机生成5个英文验证码,判断用户输入的是否正确不区分大小写

热门文章

  1. js 递归函数的使用及常用函数
  2. node源码详解(五)
  3. MyBatis 入门到精通(二) SQL语句映射XML文件
  4. 理解关联容器“map”的关键点
  5. 要想能安心,必须先死心。
  6. uniapp弹出框_uniApp上拉刷新,下拉加载,以及筛选功能
  7. python while break try 无法中断_解码不能正常工作并且while循环不能正确中断python...
  8. c语言箭头指针的作用,C语言中,结构体成员变量的点和箭头
  9. 4pics1word android,4 Pics 1 Word
  10. 华润置地php面试题_从一流到顶流|2020华润置地与沈阳一起美好