2018.09.08 AtCoder Beginner Contest 109简要题解
比赛传送门
水题大赛?
全是水题啊!!!
T1
ABC333
就是判断是不是两个数都是奇数就行了。
代码:
#include<bits/stdc++.h>
using namespace std;
int main(){
int a,b;
cin>>a>>b;
if(a%2&&b%2)cout<<"Yes";
else cout<<"No";
return 0;
}
T2
Shiritori
sb字符串模拟(打比赛读题失误233)
代码:
#include<bits/stdc++.h>
using namespace std;
int n;
string w[105];
bool vis[26];
map<string,int>s;
int main(){
cin>>n;
bool f=true;
for(int i=1;i<=n;++i){
cin>>w[i];
if(s[w[i]])f=false;
s[w[i]]=1;
}
for(int i=2;i<=n;++i){
if(w[i-1][w[i-1].size()-1]==w[i][0])continue;
f=false;
}
if(f)cout<<"Yes";
else cout<<"No";
return 0;
}
T3
Skip
就是求一堆数的最大公约数。
直接把X放进x数组里一起排序后求所有连续两个数的差值的最大公约数就行了。
代码;
#include<bits/stdc++.h>
#define N 100005
using namespace std;
inline int read(){
int ans=0;
char ch=getchar();
while(!isdigit(ch))ch=getchar();
while(isdigit(ch))ans=(ans<<3)+(ans<<1)+(ch^48),ch=getchar();
return ans;
}
int n,x[N];
inline int gcd(int a,int b){while(b){int t=a;a=b,b=t%a;}return a;}
int main(){
n=read()+1;
for(int i=1;i<=n;++i)x[i]=read();
sort(x+1,x+n+1);
int g=x[2]-x[1];
for(int i=3;i<=n;++i)g=gcd(g,x[i]-x[i-1]);
cout<<g;
return 0;
}
T4
Make Them Even
这题直接贪心就完了啊。
对于每一行,我们从左到右判断。
如果当前格子中是奇数,那么向右移,判断下一个格子;否则直接判断下一个格子。
注意:我们并不判断最后一列。
所有行操作完之后除最后一列之外全是偶数了。
于是最后一列从上到下判断。
如果当前格子中是奇数,那么向下移,判断下一个格子;否则直接判断下一个格子。
统计完后输出方案就行了。
代码:
#include<bits/stdc++.h>
#define N 505
using namespace std;
inline int read(){
int ans=0;
char ch=getchar();
while(!isdigit(ch))ch=getchar();
while(isdigit(ch))ans=(ans<<3)+(ans<<1)+(ch^48),ch=getchar();
return ans;
}
int h,w,a[N][N],pos[N];
bool vis[N][N],is[N][N];
struct Node{int a,b,c,d;};
vector<Node>q;
int main(){
h=read(),w=read();
for(int i=1;i<=h;++i){
for(int j=1;j<=w;++j)a[i][j]=read();
for(int j=1;j<w;++j)if(a[i][j]&1)a[i][j+1]++,q.push_back((Node){i,j,i,j+1});
}
for(int i=1;i<h;++i)if(a[i][w]&1)a[i+1][w]++,q.push_back((Node){i,w,i+1,w});
cout<<q.size()<<'\n';
for(int i=0;i<q.size();++i)cout<<q[i].a<<' '<<q[i].b<<' '<<q[i].c<<' '<<q[i].d<<'\n';
return 0;
}
ak之后意外得知这场rating1200+就不计unrated了excuse me?
2018.09.08 AtCoder Beginner Contest 109简要题解的更多相关文章
- 2018.09.02 Atcoder Regular Contest 102简要题解
比赛传送门 T1 Triangular Relationship 分析之后发现有两种情况: 1. n为奇数,那么所有数都是k的倍数. 2. n为偶数,那么所有数都是k/2的倍数. 然后就可以愉快A题了 ...
- Atcoder Beginner Contest 138 简要题解
D - Ki 题意:给一棵有根树,节点1为根,有$Q$次操作,每次操作将一个节点及其子树的所有节点的权值加上一个值,问最后每个节点的权值. 思路:dfs序再差分一下就行了. #include < ...
- KYOCERA Programming Contest 2021(AtCoder Beginner Contest 200) 题解
KYOCERA Programming Contest 2021(AtCoder Beginner Contest 200) 题解 哦淦我已经菜到被ABC吊打了. A - Century 首先把当前年 ...
- AtCoder Grand Contest 031 简要题解
AtCoder Grand Contest 031 Atcoder A - Colorful Subsequence description 求\(s\)中本质不同子序列的个数模\(10^9+7\). ...
- 比赛总结——atcoder beginner contest 109
第一次AK的ABC 虽然题非常简单 但是值得纪念一下 T1 一道很水的题 不存在做法 纯粹乱跑 但是我把Yes打成YES了,哭唧唧 #include <cstdio> #include & ...
- AtCoder Beginner Contest 089完整题解
A - Grouping 2 Time limit : 2sec / Memory limit : 256MB Score : 100 points Problem Statement There a ...
- AtCoder Grand Contest 040 简要题解
从这里开始 比赛目录 A < B < E < D < C = F,心情简单.jpg. Problem A >< 把峰谷都设成 0. Code #include &l ...
- AtCoder Grand Contest 035 简要题解
从这里开始 题目目录 Problem A XOR Circle 你发现,权值的循环节为 $a_0, a_1, a_0\oplus a_1$,然后暴力即可. Code #include <bits ...
- AtCoder Grand Contest 036 简要题解
从这里开始 比赛目录 Problem A Triangle 考虑把三角形移到和坐标轴相交,即 然后能够用坐标比较简单地计算面积,简单构造一下就行了. Code #include <bits/st ...
随机推荐
- 10.Action中的method属性
转自:https://wenku.baidu.com/view/84fa86ae360cba1aa911da02.html 在struts1.x中我们知道通过继承DispatchAction可以实现把 ...
- 4. mybatis实战教程(mybatis in action)之四:实现关联数据的查询
转自:https://www.cnblogs.com/shanheyongmu/p/5653599.html 有了前面几章的基础,对一些简单的应用是可以处理的,但在实际项目中,经常是关联表的查询,比如 ...
- EXCEL 数组公式
数组里的元素,同一行内的各元素用英文逗号“,”分开,用英文分号“;”将各行分开 3.单列数组与单行数组的计算 两个数组相加,查看结果是几行几列:在任意单元格输入公式“=A80:A83+B87:E87” ...
- egret 配置设置
修改index.html的时候,要主要template文件夹下的web文件夹也有个index.html,两者控制的不一样 初始安装新建项目后调试这样的情况.重新安装引擎和下载egret安装包安装,默认 ...
- 使用 C++11 编写类似 QT 的信号槽——上篇
了解 QT 的应该知道,QT 有一个信号槽 Singla-Slot 这样的东西.信号槽是 QT 的核心机制,用来替代函数指针,将不相关的对象绑定在一起,实现对象间的通信. 考虑为 Simple2D 添 ...
- UI5-文档-4.30-Debugging Tools
虽然我们在前面的步骤中添加了一个基本的测试覆盖率,但是我们似乎不小心破坏了我们的应用程序,因为它不再显示价格到我们的发票上.我们需要调试这个问题,并在有人发现之前修复它. 幸运的是,SAPUI5提供了 ...
- Python之实例对象的增删改查
#实例对象的增删改查p1 = ChinesePeople('wangyue')#print (p1.__dict__) #查看实例对象的属性#print (p1.name)(p1.play_ball( ...
- Kotlin语言学习笔记(4)
函数 // 函数定义及调用 fun double(x: Int): Int { return 2*x } val result = double(2) // 调用方法 Sample().foo() / ...
- Python运维开发基础10-函数基础
一,函数的非固定参数 1.1 默认参数 在定义形参的时候,提前给形参赋一个固定的值. #代码演示: def test(x,y=2): #形参里有一个默认参数 print (x) print (y) t ...
- Linux 软件 安装到 /usr,/usr/local/ 还是 /opt 目录
Linux 的软件安装目录是也是有讲究的,理解这一点,在对系统管理是有益的 /usr:系统级的目录,可以理解为C:/Windows/,/usr/lib理解为C:/Windows/System32./u ...