Codeforces 918(div4)
Codeforces 918(div4)
Problem - A - Codeforces
#include<bits/stdc++.h>
using namespace std;
const int N = 1e5 + 10;
int a[N];
int main()
{
long long n;
cin >> n;
while(n --)
{
int a , b , c;
cin >> a >> b >> c;
if(a == b) cout << c << endl;
else if(a == c) cout << b << endl;
else if(b == c) cout << a << endl;
}
return 0;
}
Problem - B - Codeforces
#include<bits/stdc++.h>
using namespace std;
const int N = 1e5 + 10;
int main()
{
long long n;
cin >> n;
while(n --)
{
char a[4][4] = {0};
int x , y;
for(int i = 1 ; i <= 3 ; i ++)
{
for(int j = 1 ; j <= 3 ; j ++)
{
cin >> a[i][j];
if(a[i][j] == '?')
{
x = i;
y = j;
}
}
}
bool sta = false;
bool stb = false;
bool stc = false;
for(int i = 1 ; i <= 3 ; i ++)
{
if(a[x][i] != '?')
{
if(a[x][i] == 'A') sta = true;
if(a[x][i] == 'B') stb = true;
if(a[x][i] == 'C') stc = true;
}
if(a[x][i] == '?') continue;
}
if(!sta) cout << "A" << endl;
else if(!stb) cout << "B" << endl;
else if(!stc) cout << "C" << endl;
}
return 0;
}
Problem - C - Codeforces
注意一下判断 是否为平方数的方法;也要记得开long long
#include<bits/stdc++.h>
using namespace std;
bool check(long long p)
{
long long m = sqrt(p);
return (long long)m * m == p;
}
int main()
{
long long n;
cin >> n;
while(n --)
{
long long m;
cin >> m;
long long sum = 0;
for(int i = 1 ; i <= m ; i ++)
{
long long b;
cin >> b;
sum += b;
}
if(check(sum)) cout << "Yes" << endl;
else cout << "No" << endl;
}
return 0;
}
Problem - D - Codeforces
正序写 讨论的情况比较多,所以选择倒叙看;
#include <bits/stdc++.h>
using namespace std;
char p[] = {'a','e'};
char q[] = {'b','c','d'};
int check1(char y) //判断是否为V
{
for(int i = 0;i < 2;i++)
if(p[i] == y) return 1;
return 0;
}
int check2(char y)//判断是否为C
{
for(int i = 0 ;i < 3;i++)
if(q[i] == y) return 1;
return 0;
}
int main()
{
int t;
cin >> t;
while(t--)
{
int n;
cin >> n;
string a;
cin >> a;
string ans;
//倒着看情况少 好写代码
//倒着看 只要第一个符合C那么就往前看是不是满足CVC
//如果是V就看他前一个是不是C;
for(int i = n - 1;i >= 0;i--)
{
ans.push_back(a[i]);
if(check2(a[i]) && check1(a[i-1]) && check2(a[i-2])) //如果符合CVC
{
ans.push_back(a[i-1]);
ans.push_back(a[i-2]);
ans.push_back('.');
i -= 2;
}
else if(check1(a[i]) && check2(a[i-1])) //如果符合CV
{
ans.push_back(a[i-1]);
ans.push_back('.');
i -= 1;
}
}
for(int i = ans.size()- 2;i >= 0;i--) //要从ans.size()-2开始;
cout << ans[i];
cout << endl;
}
return 0;
}
Problem - E - Codeforces
根据题目要求 找出一段奇数的和 和 偶数的和相等的序列就输出yes,否则就输出no
a^l + a^(l+2) + ..+a^r = a^(l+1) + a^(l+3) +...+a^(r-1);
移项:
a^l - a^(l+1) + a^(l+2) - a^(l+3) +...+a^r-a^(r-1) = 0;
就找出这个式子;
也就是奇数项 - 偶数项 得到为0就代表YES
然后如果不是0 那么我们就要将这个数据记录下来,如果再次出现这个数据,那么就代表从出现过这个数据 后面的奇数项-偶数项的差值为0;那么也是输出YES
否则就输出no
#include <bits/stdc++.h>
using namespace std;
const int N = 1e6 + 10;
int a[N];
int main()
{
int t;
cin >> t;
while(t--)
{
int n;
cin >> n;
for(int i = 1 ; i <= n ; i ++) cin >> a[i];
long long sum = 0;
map<long long , int>st;
bool success = false;
for(int i = 1 ; i <= n ; i ++)
{
if(i & 1) sum += a[i]; //奇数就加
else sum -= a[i];//偶数就减
if(sum == 0 || st[sum]) //sum等于0 或者 这个sum又出现过一次
{
cout << "yes" << endl;
success = true;
break;
}
else
{
st[sum] ++; //记录这个sum出现过
}
}
if(!success) cout << "NO" << endl;
}
return 0;
}
Codeforces 918(div4)的更多相关文章
- Codeforces 918 括号匹配 SGdp[i][j][k]
A B C #include <bits/stdc++.h> #define PI acos(-1.0) #define mem(a,b) memset((a),b,sizeof(a)) ...
- Codeforces #640 div4 F~G (构造二连弹)
题意:求一个只由\(01\)组成的字符串,使得它所有长度为\(2\)的子串满足:每对子串的数字和为\(0,1,2\)的个数为\(a,b,c\). 题解:我们先考虑子串数字和为\(1\)的情况,构造出一 ...
- Codeforces 918C The Monster(括号匹配+思维)
题目链接:http://codeforces.com/contest/918/problem/C 题目大意:给你一串字符串,其中有'('.')'.'?'三种字符'?'可以当成'('或者')'来用,问该 ...
- codeforces的dp专题
1.(467C)http://codeforces.com/problemset/problem/467/C 题意:有一个长为n的序列,选取k个长度为m的子序列(子序列中不能有位置重复),求所取的k个 ...
- Codeforces 918D/917B - MADMAX
传送门:http://codeforces.com/contest/918/problem/D 本题是一个组合游戏问题——DAG上的动态规划问题. 有一张有向无环图(DAG).有两个玩家在这张图上进行 ...
- Codeforces 918C/917A - The Monster
传送门:http://codeforces.com/contest/918/problem/C 一个括弧串由字符‘(’和‘)’组成.一个正确的串可被递归地定义,定义如下: ①空串e是一个正确的串: ② ...
- Codeforces Round #690 (Div. 3)
第一次 ak cf 的正式比赛,不正式的是寒假里 div4 的 Testing Round,好啦好啦不要问我为什么没有 ak div4 了,差一题差一题 =.= 不知不觉已经咕了一个月了2333. 比 ...
- [cf]Codeforces Round #784(Div 4)
由于一次比赛被虐得太惨,,生发开始写blog的想法,于是便有了这篇随笔(找了个近期的cf比赛练练手(bushi))第一次写blog,多多包涵. 第二场cf比赛,第一场打的Div2,被虐太惨,所以第二场 ...
- python爬虫学习(5) —— 扒一下codeforces题面
上一次我们拿学校的URP做了个小小的demo.... 其实我们还可以把每个学生的证件照爬下来做成一个证件照校花校草评比 另外也可以写一个物理实验自动选课... 但是出于多种原因,,还是绕开这些敏感话题 ...
- 【Codeforces 738D】Sea Battle(贪心)
http://codeforces.com/contest/738/problem/D Galya is playing one-dimensional Sea Battle on a 1 × n g ...
随机推荐
- Quantitative Relationship Induction
数量关系是指事物之间的数值或数量之间的相互关系(+.-.*./). 数量关系描述各种量的变化和相互关系.数量关系可以包括数值的比较.增减.比例.百分比.平均值等方面. 在数学中,数量关系可以通过代数方 ...
- 一种对数据库友好的GUID的变种使用方法
概述 .NET生成的GUID唯一性很好,用之方便,但是,缺少像雪花算法那样的有序性.虽然分布式系统中做不到绝对的有序,但是,相对的有序对于目前数据库而言,索引效率等方面的提升还是有明显效果的(当然,我 ...
- Gossip in Hyperledger Fabric
1. Gossip协议基础 1.1 什么是分布式系统 分布式系统(Distributed System)是由多台计算机或计算节点组成的计算机系统,这些计算节点通过网络连接在一起,并协同工作以完成共同的 ...
- 轻量通讯协议 --- MQTT
介绍 一.MQTT简介 MQTT(Message Queuing Telemetry Transport) 是一种轻量级的消息传输协议,通常用于在物联网(IoT)和传感器网络中进行通信.它设计用于在低 ...
- Super Apps 超级应用们背后的道家哲学
众所周知,Elon Musk 想将 Twitter 重新设计定位成一款"超级应用 - X"的野心已经不再是秘密.伴随着应用商店中 Twitter 标志性的蓝鸟 Logo 被 X 取 ...
- 微软发布开源平台 Radius:高效构建、运行基于Dapr 云原生应用程序
Microsoft Azure 孵化团队很高兴地宣布[1]推出一个名为 Radius 的新开放应用程序平台,该平台将应用程序置于每个开发阶段的中心,重新定义应用程序的构建.管理和理解方式.Radius ...
- 【虹科干货】谈谈Redis Enterprise实时搜索的过人之处
我们都知道,用户在使用应用程序时候,对于速度有着越来越高的要求,真可谓是"一秒也等不及".而开发团队又该怎样来满足这种对于实时性的期望呢? 文章速览: Redis Enterpri ...
- 一键修改IP多实例
一键修改IP多实例-v1 #!/bin/bash #2020-03-01 #auto change ip #By Flyaway ###################### grep "d ...
- c#享元模式详解
基本介绍: 享元模式的定义:运用共享技术有效地支持大量细粒度的对象重复使用.适用于大量小粒度的对象造成的运行效率和内存使用效率低下的情况. "享元"顾名思义,"享 ...
- Qt5 学习积累
目录 1.cout/cin 2.随机数 3.QSting. string.QChar,.char等的转换 4.退出 5.Qt::tr() 6.QFrame::shape,shadow 7.QCombo ...