zoukankan      html  css  js  c++  java
  • 牛客OI周赛8-普及组

    https://ac.nowcoder.com/acm/contest/543#question

    A.

    代码:

    #include <bits/stdc++.h>
    using namespace std;
    
    int N;
    vector<int> v;
    
    int main() {
        scanf("%d", &N);
        v.resize(N);
        for(int i = 0; i < N; i ++)
            scanf("%d", &v[i]);
    
        int ans;
        sort(v.rbegin(), v.rend());
        for(int i = 0; i < N; i ++) {
            int a = (int)sqrt(v[i]);
            if(a * a != v[i]) {
                ans = v[i];
                break;
            }
        }
    
        printf("%d
    ", ans);
        return 0;
    }
    View Code

    B.

    代码:

    #include <bits/stdc++.h>
    using namespace std;
     
    int N, M;
    vector<string> s;
    vector<string> t;
     
    int main() {
        scanf("%d%d", &N, &M);
        s.resize(N);
        t.resize(M);
        for(int i = 0; i < N; i ++)
            cin >> s[i];
        for(int i = 0; i < M; i ++)
            cin >> t[i];
     
        for(int i = 0; i < N; i ++) {
            int ls = s[i].length();
            int cnt = 0;
            for(int j = 0; j < M; j ++) {
                int lt = t[j].size();
     
                int p1 = 0, p2 = 0, cc = 0;
                while(p1 < ls && p2 < lt) {
                    while(s[i][p1] != t[j][p2] && p1 < ls && p2 < lt) p1 ++;
                    if(s[i][p1] == t[j][p2]) cc ++, p1 ++, p2 ++;
                }
                if(cc == lt) cnt ++;
            }
            printf("%d
    ", cnt);
        }
        return 0;
    }
    View Code

    C.

    代码:

    #include <bits/stdc++.h>
    using namespace std;
    
    int T;
    long long L, R;
    
    int main() {
        scanf("%d", &T);
        while(T --) {
            scanf("%lld%lld", &L, &R);
            int pos = -1;
            for(int i = 63; i >=0; i --) {
                if((1LL << i & L) != (1LL << i & R)) {
                    pos = i;
                    break;
                }
            }
            long long ans = 0;
            for(int i = 0; i <= pos; i ++)
                ans += 1LL << i;
    
            printf("%lld
    ", ans);
        }
        return 0;
    }
    View Code

    从高到低找到第一个 L R 不同的位

    C.D 比赛的时候忘记被什么中断掉了 待更!(我会记得写的 QAQ)最近很长一段时间都没记得更了 写了题目也没来得及贴上 我我我争取以后不要这样了!前一阵写的题目找个时间都贴出来吧!

  • 相关阅读:
    ARM 平台下的 SSHD 配置
    IISExpress 开放局域网访问
    qt5 交叉编译
    QT4 交叉编译
    make install 时指定安装路径
    linux 读取物理寄存器
    Windows 7 64bit Python 2 Install
    用eggjs返回xml格式数据,前端解析xml
    vue-cli项目中axios的配置文件
    webpack配置练习typescript的web项目
  • 原文地址:https://www.cnblogs.com/zlrrrr/p/10590318.html
Copyright © 2011-2022 走看看