• 2021 RoboCom 世界机器人开发者大赛-高职组初赛


    2021 RoboCom 世界机器人开发者大赛-高职组初赛

    前言

    比赛的时候老师总是说,你们连高职都打不过。

    题目都很简单,就直接贴一下代码吧,有的用C++写的,有的用Python写的。

    1.机器人打招呼

    在这里插入图片描述

    AC代码

    print("ni ye lai can jia RoboCom a?")
    
    • 1

    2.人脸识别

    在这里插入图片描述

    AC代码

    #include<bits/stdc++.h>
    using namespace std;
    signed main(){
        int A,B,C,D,a,b,c;
        cin>>A>>B>>C>>D>>a>>b>>c;
        cout<<"Diff = "<<A-a<<", "<<B-b<<", "<<C-c<<"\n";
        if (abs(A-a) + abs(B-b) + abs(C-c) <= D)
            cout<<"Yes";
        else
            cout<<"No";
        return 0;
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    3.月份输出

    在这里插入图片描述

    AC代码

    #include<bits/stdc++.h>
    using namespace std;
    int n;
    string s[13] = {"","January","February","March","April","May","June",
                    "July","August","September","October","November","December"};
    signed main(){
        while (cin>>n){
            if (n > 12 || n < 1)
                break;
            cout<<s[n]<<"\n";
        }
        cout<<"?";
        return 0;
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    4.字母串

    在这里插入图片描述

    AC代码

    #include<bits/stdc++.h>
    using namespace std;
    signed main(){
        int n;cin>>n;
        while(n--){
            string s;cin>>s;bool f = true;
            for (int i = 0; i < s.length() - 1; ++i) {
                if (islower(s[i])){
                    if (!(s[i + 1] == s[i] - 1 || toupper(s[i]) == s[i + 1])){
                        f = false;break;
                    }
                }
                else
                    if (!(tolower(s[i]) == s[i + 1] || s[i + 1] == s[i] + 1)){
                        f = false;break;
                    }
            }
            if (f)
                cout<<"Y\n";
            else
                cout<<"N\n";
        }
        return 0;
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24

    5.增一数

    在这里插入图片描述

    AC代码

    #include<bits/stdc++.h>
    using namespace std;
    #define int long long
    bool check(int x){
        int k = 0,kk = x;
        while (kk){
            kk /= 10; k += 1;
        }
        if (k % 2 != 0)
            return false;
        k = pow(10,k / 2);
        if (x % k - 1 == x / k)
            return true;
        return false;
    }
    signed main(){
        int n;cin>>n;
        while(n--){
            int m,k = 0;
            cin>>m;
            if (check(m)){
                k += 1;
                if (ceil(sqrt(m)) * ceil(sqrt(m)) == m)
                    k += 1;
            }
            cout<<k<<"\n";
        }
        return 0;
    }
    
    • 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

    6.答题卡

    新浪微博上有网友发文称:“朋友买了本玻尔X海森堡的物理大佬同人本,送了300道高数题。更绝的是,要做完题目按照答案涂答题卡,涂出一个二维码,扫描二维码才能看到特典,做错了就看不到了……”那张传说中的答题卡如下图所示:若答案为 4 位整数(位数不足时在前面补足 0),则前两位为横坐标,后两位为纵坐标。若一题有两小问,则第一问答案为横坐标,第二问答案为纵坐标。若答案为分数,则分子为横坐标,分母为纵坐标。

    本题就请你根据答案帮助读者填写答题卡。

    在这里插入图片描述

    AC代码

    ch = [['.'] * 105 for i in range(105)]
    n, m = map(int,input().split())
    for i in range(m):
        s = input()
        if s.count(';'):
            a, b = map(int,s.split(';'))
            col = a
            row = n - b + 1
            ch[row][col] = '#'
        elif s.count('/'):
            a, b = map(int,s.split('/'))
            col = a
            row = n - b + 1
            ch[row][col] = '#'
        else:
            a = int(s)
            b = a % 100
            a //= 100
            col = a
            row = n - b + 1
            ch[row][col] = '#'
    for i in range(1,n + 1):
        for j in range(1,n + 1):
            print(ch[i][j],end='')
        print()
    
    • 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

    7.救救倒霉鬼

    在这里插入图片描述

    AC代码

    s = set()
    n = int(input())
    for i in range(n):
        s.add(input())
    m = int(input())
    for i in range(m):
        s.remove(input())
    s = list(s)
    s.sort(reverse=True)
    for i in s:
        print(i)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
  • 相关阅读:
    斑马打印机二维码标签制作(.prn文件)基础简单快速上手
    laravel 阿里云短信发送
    第八章 排序 十四、最佳归并树
    TensorBoard——Pytorch版使用(附带案例演示)
    【Nginx】Windows平台下配置Nginx服务实现负载均衡
    史上最详细的hadoop安装教程(含坑点)
    DNSlog快速注入
    [管理与领导-116]:IT人看清职场中的隐性规则 - 13 - 项目负责人如何帮助项目经理提升项目管理的威望、成就感、积极性,从而提升项目执行的效率?
    git常见bug及其解决方案
    02【UML统一建模语言】
  • 原文地址:https://blog.csdn.net/qq_45985728/article/details/125487688