首页 > 其他分享 >Codeforces Round #834 A-C

Codeforces Round #834 A-C

时间:2022-11-29 21:38:08浏览次数:40  
标签:cout 834 int Codeforces sum1 abs maxone && Round


A

void s(){
string a;
cin >> a;

if(a[0] != 'Y' && a[0] != 'e' && a[0] != 's'){
cout << "No\n";return;
}
for(int i = 0; i < a.size() - 1; i++){
if(a[i] != 'Y' && a[i] != 'e' && a[i] != 's'){
cout << "No\n";return;
}
if(a[i] == 'Y' && a[i + 1] != 'e'){
cout << "No\n";return;
}
if(a[i] == 'e' && a[i + 1] != 's'){
cout << "No\n";return;
}
if(a[i] == 's' && a[i + 1] != 'Y'){
cout << "No\n";return;
}
}cout << "YES\n";

}





B

void s(){
int n, sum;
cin >> n >> sum;

int sum1 = 0;
int sum2 = 0, maxone = -1;
vector<int> a(n + 1);
for(int i = 1; i <= n ;i ++) cin >> a[i], sum2 += a[i], maxone = max(maxone, a[i]);

for(int i = 1; i <= maxone;i ++) {
sum1 += i;
}
if(sum1 - sum2 == sum) {
cout << "YES\n";
return;
}

for(int i = maxone + 1; i <= 1700;i ++) {
sum1 += i;
if(sum1 - sum2 == sum) {
cout << "YES\n";
return;
}
}
cout << "NO\n";
}




C

分析case:

Codeforces Round #834  A-C_i++

1.a == b  直接输出0

2.abs(a - b) >= x 可以一步跳到 输出1

3.如果存在中介c,满足abs(a-c)>=x && abs(b-c)>=x,则可以通过2步跳到

4.前面情况都不满足,则直接通过跳边界三步a->l->r->b或者a->r->l->b能到的话就输出3

5.都不满足就输出-1

void s(){
int l, r, x, a, b;
cin >> l >> r >> x >> a >> b;

if(a == b){
cout << "0\n";return;
}

if(abs(a - b) >= x){
cout << "1\n";return;
}

if( (abs(a - l) >= x && abs(b - l) >= x) || (abs(a - r) >= x && abs(b - r) >= x)){
cout << "2\n";return;
}
if((l<=a-x && r-l >= x && r - b >= x) || (a + x <= r && r - l >= x && b - l >= x)){
cout << "3\n";return;
}

cout << "-1\n";
}

标签:cout,834,int,Codeforces,sum1,abs,maxone,&&,Round
From: https://blog.51cto.com/u_15389271/5897068

相关文章

  • Codeforces Round #805 (Div. 3) G2
    G2.PassablePaths(hardversion)题链我们思考一条链的特性发现只要“确定”两端之后就可以用LCA一遍判断是否是一条链的我们如何确定两端首先深度最深的一定是一......
  • Codeforces Round #836 (Div. 2) A-D题解
    比赛链接A、SSeeeeiinnggDDoouubbllee一个字符串的每个字母翻倍,且没有其他限制。所以把字符串正着输一遍,再倒叙输出一遍即可。点击查看代码#include<bits/stdc++.h>......
  • Codeforces Global Round 24 D
    D.Doremy'sPeggingGame题目链接挺难的一道计数计数问题最重要的是考虑如果划分集合然后不重不漏地计算出来我们考虑枚举每一个序列的结束点就是有n个然后这n个显......
  • Codeforces Round #836 (Div. 2)(A~D)
    A每个字符出现次数都是偶数,直接拼接defsolve():s=input()t=sprint(s+t[::-1])t=int(input())foriinrange(t):solve()B奇数个的情况下n个相同的......
  • Android:按下与提起的状态background
    <?xmlversion="1.0"encoding="utf-8"?><selectorxmlns:android="http://schemas.android.com/apk/res/android"><itemandroid:drawable="@color/btn_pressed_green_......
  • Codeforces Round #826 (Div. 3) F
    F.Multi-ColoredSegments洛谷最优解显然我们对于每一个线段可以分成左右两端考虑我们先按照lsort一遍然后每次计算与他最近的值我们维护两个最大的r即可然后每次......
  • 「题解」Codeforces 1765L Project Manager
    写了两个小时写吐了,你告诉我这玩意2400?如果不管假期的话,那么每一周必然会有一个项目跟进一次进度。那么答案就是线性的。即使有假期的存在也没关系,每个假期顶多就只会拖......
  • Codeforces Global Round 24(持续更新)
    Preface最近可能中了降智病毒,写什么都写不过下午打的校趣味赛看错题一个爆搜WA了四次,少罚一次时都Rank1了然后晚上CF先是C想半天,然后D作为曾经最擅长的计数题也漏想了一......
  • Knights of the Round Table
    #Description给定若干骑士和他们之间的仇恨关系,规定召开圆桌会议时,两个有仇恨的骑士不能坐在相邻位置,且召开一次圆桌会议的骑士人数必须为奇数,求有多少骑士永远不可能参加......
  • Codeforces Round #829 (Div. 1) C
    C.WishIKnewHowtoSort我们会发现此题的终点状态只有一个起点状态也只有一个所以我们的状态表示可以非常简单我们可以发现我们为了达到最终的状态我们用一些1来......