您好,欢迎来到化拓教育网。
搜索
您的当前位置:首页2024GPLT天梯赛部分题目

2024GPLT天梯赛部分题目

来源:化拓教育网

L1-097 编程解决一切

#include<bits/stdc++.h>
using namespace std;
int main(){
    cout<<"Problem? The Solution: Programming.";
    return 0;
}

L1-098 再进去几个人

#include<bits/stdc++.h>
using namespace std;
int main(){
    int n,m;
    cin>>n>>m;
    cout<<m-n;
    return 0;
}

L1-099 帮助色盲

#include<bits/stdc++.h>
using namespace std;
int main(){
    int n,m;
    cin>>n>>m;
    if(n==0||n==1){
        if(m==1){
            if(n==0){
                cout<<"-"<<endl;
                cout<<"stop"<<endl;
            }else if(n==1){
                cout<<"-"<<endl;
                cout<<"move"<<endl;
            }
        }
        else if(m==0){
            if(n==0){
                cout<<"biii"<<endl;
                cout<<"stop"<<endl;
            }else if(n==1){
                cout<<"dudu"<<endl;
                cout<<"move"<<endl;
            }
        }
    }
    else if(n==2){
        cout<<"-"<<endl;
        cout<<"stop"<<endl;
    }
    return 0;
}

L1-100 四项全能

#include<bits/stdc++.h>
using namespace std;
vector<int> v;
int main(){
    int n,m;
    cin>>n>>m;
    int sum = 0;
    int min = 1e5+3;
    for(int i = 0;i<m;i++){
        int s;
        cin>>s;
        v.push_back(s);
        sum += s;
        if(s<min) min = s;
    }
    //cout<<min;
    int res = sum-n*(m-1);
    // if(res<min) cout<<res;
    // else cout<<min;
    if(res<=0){
        cout<<0;
    }//本题负数隐藏了一个一分的坑(没有在技能公共集最小处挖坑还是比较“善良”)
    else cout<<sum-n*(m-1);
    return 0;
}

L1-102 兰州牛肉面

#include<bits/stdc++.h>
using namespace std;
const int N = 1e3+3;
vector<double> v(N,0);
vector<int> v1(N,0);
//<double> v2(N,0);
double sum = 0;
int main(){
    int n;
    cin>>n;
    for(int i = 1;i<=n;i++){//注意下标从1开始
        double s;
        cin>>s;
        // v.push_back(s);//注意其此处不是从下标零或一处开始存放
        v[i] = s;
    }
    // for(int i = 1;i<=n;i++){//注意下标从1开始
    //     cout<<v[i]<<" ";
    // }
    int x,y;
    cin>>x>>y;
    while(x!=0&&y!=0){
        v1[x] += y;
        //v2[x] += y*v[x];
        sum += y*v[x];
        cin>>x>>y;
    }
    for(int i = 1;i<=n;i++){
        cout<<v1[i]<<endl;
        //sum += (double)v1[i]*v[i];
    }
    printf("%.2f",sum);
    return 0;
}

L1-103 整数的持续性

//服了心态真的很重要,课下轻轻松松0-bug写出来了,考场上硬是bug频出(想法对但因细节和心态和思维不稳,运行结果就是和想象不符)
//临场能力不够(菜还是多练,考场有降智buff,需往120%去准备)
#include<bits/stdc++.h>
using namespace std;
vector<int> v;
int main(){
    int a,b;
    cin>>a>>b;
    int max = -1;
    for(int i = a;i<=b;i++){
        int temp1 = i;
        int temp2 = temp1;
        //自己纯纯臆想最后个位数和数字首位相等的条件
        // int firstnum;
        // int flag = 1;
        int count = 0;
        // while(temp2!=0){//找首部数字
        //     int s = temp2;
        //     temp2 /= 10;
        //     if(flag==1&&temp2==0){
        //         firstnum = s;
        //         break;
        //     }
        // }
        while(temp1>=10){
            count++;
            int p = 1;
            while(temp1!=0){
                p = p*(temp1%10);
                temp1 /= 10;
            }
            temp1 = p;
        }
        // if(temp1>=0&&temp1<=9){
        //     if(temp1==firstnum&&count>max){
        //         v.clear();
        //         max = count;
        //         v.push_back(i);
        //     }else if(temp1==firstnum&&count==max){
        //         v.push_back(i);
        //     }else{
        //         continue;
        //     }
        // }
        if(temp1>=0&&temp1<=9){
            if(count>max){
                v.clear();
                max = count;
                v.push_back(i);
            }else if(count==max){
                v.push_back(i);
            }else{
                continue;
            }
        }
    }
    cout<<max<<endl;
    if(v.size()!=0){
        cout<<v[0];
    }
    for(int i = 1;i<v.size();i++){
        cout<<" "<<v[i];
    }
    return 0;
}

L2-049 鱼与熊掌

//纯纯模拟加集合应用没别的
#include<bits/stdc++.h>
using namespace std;
const int N = 1e5+3;
set<int> se[N];
int main(){
    int n,m;
    cin>>n>>m;
    for(int i = 0;i<n;i++){
        int s;
        cin>>s;
        for(int j = 0;j<s;j++){
            int k;
            cin>>k;
            se[i].insert(k);
        }
    }
    int a;
    cin>>a;
    for(int i = 0;i<a;i++){
        int x,y;
        cin>>x>>y;
        int num = 0;
        for(int j = 0;j<n;j++){
            if(se[j].find(x)!=se[j].end()&&se[j].find(y)!=se[j].end())
                num++;
            }
        cout<<num<<endl;
    }
    return 0;
}

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo9.cn 版权所有 赣ICP备2023008801号-1

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务