• 牛客小白月赛55


    牛客小白月赛55

    A 至至子的等差中项

    思路:
    按照题意转换一下即可

    #include
    using namespace std;
    #define int long long
    #define rep(i,a,n) for(int i=a;i<=n;i++)
    #define per(i,a,n) for(int i=n;i>=a;i--)
    #define pb push_back
    #define SZ(v) ((int)v.size())
    #define fs first
    #define sc second
    const int N=2e6+10,M=2e5;
    typedef double db;
    typedef pairpii;
    int n,m,k,Q,cnt,t,ans,res;
    vectordel;
    int a[N],p[N];
    int prime[N];
    mapst;
    mapmp;
    mapmp1;
    setq;
    int dp[110][110];
    int l=1,f=0;
    string c;
    
    void solve(){
        int a,b;
        cin>>a>>b;
        cout<<2*b-a;
    }
    signed main(){
        int t;//cin>>t;
        t=1;
        while(t--)solve();
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35

    B 至至子的按位与

    思路:
    如果想让c尽可能大,让a和b相同部分全为1,不同部分为0jike

    #include
    using namespace std;
    #define int long long
    signed main(){
        int a,b;
        cin>>a>>b;
        int res=0;
        for(int i=62;i>=0;i--){
            int x=a>>i&1,y=b>>i&1;
            if(x==y){
                res|=(1ll<
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    C 至至子的斐波那契

    思路:
    我们可以打下表看看1e18有多少个f[i]可以发现只有88个左右,然后我们直接找就行了

    #include
    using namespace std;
    #define int long long
    const int N=100;
    int f[N];
    signed main(){
        f[1]=f[2]=1;
        for(int i=3;i<=88;i++)f[i]=f[i-1]+f[i-2];
        //cout<>t;
        while(t--){
            int n;
            cin>>n;
            int mx=1e18,id=0;
            for(int i=1;i<=88;i++){
                if(mx>abs(n-f[i])){
                    id=i;
                    mx=abs(n-f[i]);
                }
            }
            cout<
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23

    D 至至子的鸿门宴

    思路:水题
    我们可以发现每个人一次只能拿一个,还没有限制,所以就判断所有(a[i]-i)的值的总和,判断奇偶即可

    #include
    using namespace std;
    int main(){
        int n;cin>>n;
        int sum=0;
        for(int i=1;i<=n;i++){
         int x;cin>>x;
            sum+=(x-i);
        }
        if(sum&1)cout<<"ZZZ";
        else cout<<"SSZ";
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    E 至至子的长链剖分

    思路: 构造

    F 至至子的公司排队

    思路: 树状dp

  • 相关阅读:
    房地产小程序 | 小程序赋能,房地产业务数字化升级
    SpringCloud微服务技术栈-什么是Docker?怎么安装Docker?
    nvidia 驱动问题
    C++项目——云备份-④-服务端配置信息模块设计与实现
    小团队管理的艺术:实现1+1>2的协同效能
    HTML DOM 事件
    后端程序员对于 Docker 要掌握多少才行?我的答案是
    OR-Tools求解仓库选址和钢材取料问题
    《吐血整理》进阶系列教程-拿捏Fiddler抓包教程(9)-Fiddler如何设置捕获Https会话
    【C++编程】类与对象 -- 运算符重载:加号、左移运算符、递增运算符、函数调用运算符(仿函数) ...
  • 原文地址:https://blog.csdn.net/qq_64289808/article/details/132871038