首页 > 其他分享 >cf-div2-856c

cf-div2-856c

时间:2023-04-10 15:13:15浏览次数:54  
标签:856c 数字 int cf 构造 num long div2

题目链接:https://codeforces.com/contest/1816/problem/C

我是傻逼,否了自己的第一直觉。。。

思路:
构造方法:以最后一个值的数值\(x\)为基准,把所有的的数字(除第一个)调整为\(x\)。
以n的奇偶性分为两种情况。
当n为奇数时:
\(第一个数字y小于等于x,构造成功。否则就除了第一个数字外,将其他数字两两变为y,构造成功。\)
当n为偶数时:
\(第一个数字y小于等于x,构造成功。否则构造失败,即不存在构造(强行按照第一种方式会出现循环,可以自己手玩试试)。\)

代码:

#include <bits/stdc++.h>
using namespace std;
const int N = 300010;
long long num[N];
void solve(){
    int n;
    cin>>n;
    for (int i=1;i<=n;i++) cin>>num[i];
    for (int i=n-1;i>1;i--){
        num[i-1] -= (num[i]-num[i+1]);
        num[i] -= (num[i]-num[i+1]);
    }
    if (n&1) cout<<"Yes\n";
    else{
        if (num[1]<=num[2]) cout<<"Yes\n";
        else cout<<"No\n";
    }
}
int main(){
    ios::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    int T;
    T = 1;
    cin>>T;
    while(T--) solve();
    return 0;
}

标签:856c,数字,int,cf,构造,num,long,div2
From: https://www.cnblogs.com/xjwrr/p/17302958.html

相关文章

  • 练习记录-cf-div2-865(A-C)
    反转就是写的非常烂Awa10其他还行吧丢人A.IanVisitsMary如果这两个数的gcd是1可以直接过去如果是0那就绕一个1过去变成三角形不然就用(1,b-1)到(a,1)这样就是两次的1不会遇到#include<bits/stdc++.h>#defineclosestd::ios::sync_with_stdio(false),cin.ti......
  • CF486D 题解
    题目传送门题目分析不算很难的树形\(\text{dp}\)。令\(dp_i\)表示以\(i\)为根的子树中联通子图的个数。在更新的时候,考虑儿子的联通子图和自己的,则有:\[dp_u=dp_u\times(dp_v+1)\]选根的时候将\(a\)最大的作为根节点。还要注意另外一点,就是当\(a_{fa}=a_{v}\)......
  • CF1599A. Weights
    题意给出n个物品,第i个重量a[i](互不相同)每次任意选一个物品放到秤的左右两边,使得放完之后左>右或左<右给出a[i]和大小关系s[i],构造方案题解必定有解把a排序,假设当前选了LRLRLR,发现在最后加L可以瞬间反转,在最前加R可以保持不变即,当前选了一段连续的a[i],放的顺序为...LRL......
  • FastCFS:再谈 选主 与 过半写:续:2节点+vote节点 群集
    偶数的 2节点+vote节点群集健壮程度如何呢?先说结论:可以保证足够健壮。 虽然vote节点仅参与选主,不参与数据复制过程的过半写,but,对于FastCFS群集来说,先要完成“选主”才能正常进行数据复制层面的”过半写“!如果没有“选主”,根本就不会有后续“过半写”的问题。哈哈。 所......
  • 练习记录-cf-div2-856(A-C)
    vp的写出4道C感觉目前不是能力范围以后有机会留下来打比赛的话再说A-PrefixandSuffixArray给出字符串的前缀和后缀问是不是回文 我采用枚举长度为n-1和1的拼凑但是这并不奏效一直wa3后来改用拼两个n/2的就过了如果有大佬看到了希望能解答一下qwq#include<b......
  • 练习记录-cf-div2-864(A-D)
    状态不怎么好场上就写出3道还磨磨蹭蹭推错结论qwq 警钟长鸣A.LiHuaandMaze一开始以为要切割发现就把其中一个包起来就行了计算包某个块需要的最小块数#include<bits/stdc++.h>#defineclosestd::ios::sync_with_stdio(false),cin.tie(0),cout.tie(0)usingn......
  • FastCFS:再谈 选主 与 过半写:续:2节点群集 默认配置下,十分不可靠,几乎100%会发生脑裂问题
     如题:仅能由于测试。千万不要用于生产环境!“选主” 通常能够完成,无法是否有vote参与;问题在于:“过半写”的any或auto模式(即隐含的smart模式)在成功“选主“后,会运行在单节点server的群集模式下,此时,根本就无法且没有完成正常意义上的数据层的主从同步,即必然发生脑裂!数据就不一......
  • 【cf864】赛后结
    属实是失踪人口了,想了一下还是把题解打到这儿。conteset地址:https://codeforces.com/contest/1797 A.题目大意:n*m的方格上给两个点,询问最少增加的障碍格子使得这两个点不连通。解题思路:水题,但是手速有点慢。直接问靠不靠墙,靠几面墙,不靠墙答案4,靠一面答案3,靠两面答案2,取两个点......
  • 【题解】CF472G Design Tutorial: Increase the Constraints
    《正解分块+FFT跑1min,__builtin_popcount暴力跑10s》《没人写正解,CF也不卡》思路正解:分块+FFT乱搞:__builtin_popcount首先我们知道哈明距离可以用一种\(O(|字符集||S|)\)的算法求。具体考虑枚举字符集中的每一个字符,将两个串中是该字符的位置看作\(1\),不是该字......
  • FastCFS:再谈 选主 与 过半写
    这二者乍一看好像是一回事:都是要求遵循大多数原则(即过半数原则)。其实,在概念上是不同的! 选主:本质是功能角色的概念。“国不能一日无主、群龙不能无首;否则,则是”一盘散沙、溃不成军“。对于FastCFS组件的群集来说,必须要有master,这个master是在server中自动选出来的,选择mast......