Educational Codeforces Round 73 (Rated for Div. 2)
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)相关推荐
- 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)( ...
- 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< ...
- 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 ...
- 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这个时候两 ...
- Educational Codeforces Round 114 (Rated for Div. 2) (A ~ F)全题解
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Educational Codeforces Round 114 (Rated for Div. 2) ...
- Educational Codeforces Round 106 (Rated for Div. 2)(A ~ E)题解(每日训练 Day.16 )
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 目录 Educational Codeforces Round 106 (Rated for Div. ...
- Educational Codeforces Round 37 (Rated for Div. 2) 1
Educational Codeforces Round 37 (Rated for Div. 2) A.Water The Garden 题意:Max想给花园浇水.花园可被视为长度为n的花园床,花园 ...
- 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, ...
- Educational Codeforces Round 114 (Rated for Div. 2) D. The Strongest Build 暴力 + bfs
传送门 文章目录 题意: 思路: 题意: 你有nnn个装备槽,每个槽里面有cic_ici个力量加成,对于每个槽只能选一个力量加成,现在给你mmm个力量组合[b1,b2,...,bn][b_1,b_2 ...
最新文章
- Android ndk 安装教程 以及环境变量配置
- html 在weblogic 上编译报错,HTTL在weblogic环境下,JDK版本1.7情况下。出现编译错误。...
- python导入其他py文件-Python如何import其它.py文件及其函数
- html 监听input输入框的值,利用原生JS实时监听input框输入值
- [游戏模版18] Win32 五子棋
- 解密春晚微信红包十亿级并发压力
- HDU - 2196 Computer(树形dp)
- halcon/c++接口基础 之异常处理
- prototype.js1.5平面结果导读图
- char*,const char*和string的相互转换
- c语言实现bitmap的基本操作
- 计算器计算经纬距离_造价人如何熟练运用计算器来做题?
- opencv学习之路(9)、对比度亮度调整与通道分离
- Per-cpu 变量
- 一文读完C语言基础语法
- 元宇宙8大创业方向:虚拟偶像、数字孪生…
- 移动政企Java线上测评_(重要)如何锻炼训练,确保通过企业线上测评 在线测评和职业性格测评...
- 用JavaScript时钟特效
- 古天乐一哭,电影宣传又跪了下来
- 随机生成5个英文验证码,判断用户输入的是否正确不区分大小写
热门文章
- js 递归函数的使用及常用函数
- node源码详解(五)
- MyBatis 入门到精通(二) SQL语句映射XML文件
- 理解关联容器“map”的关键点
- 要想能安心,必须先死心。
- uniapp弹出框_uniApp上拉刷新,下拉加载,以及筛选功能
- python while break try 无法中断_解码不能正常工作并且while循环不能正确中断python...
- c语言箭头指针的作用,C语言中,结构体成员变量的点和箭头
- 4pics1word android,4 Pics 1 Word
- 华润置地php面试题_从一流到顶流|2020华润置地与沈阳一起美好