• 西南科技大学第十届ACM程序设计竞赛题解


    A、德州扑克

    B、

    我恨11(1089)

    问题描述

    11是一个孤独的数字,小明十分讨厌这个数字,因此如果哪个数字中出现了11或者该数字是11的倍数,他同样讨厌这个数字。现在问题来了,在闭区间[L,R]之间有多少个小明讨厌的数字。

    输入

    多组测试数据,每组两个整数L,R(1<=L<=R<=100000)

    输出

    小明讨厌的数的个数。

    样例输入

    1 11

    11 111

    样例输出

    1

    11

    签到题、直接暴力即可

    #include <stdio.h>
    int find(int x)
    {
        if(x%11==0)
            return 1;
        while(x)
        {
            if(x%100==11)
                return 1;
            x=x/10;
        }
        return 0;
    }
    int main()
    {
        int sum,l,r,i;
        while(scanf("%d%d",&l,&r)!=EOF)
        {
            sum=0;
            for(i=l;i<=r;i++)
                sum+=find(i);
            printf("%d
    ",sum);
        }
        return 0;
    }


    C、

    疯狂的小面包(1090)

    问题描述

    作为一名SWUST的学生,小明经常乘坐面包车往返于老区和新区,但是有时候排队乘车的人特别多,他就会选择走路。现在小明要从新区去老区,新区到老区的路程为D,小面包的速度为X,小明步行的速度为Y,排队等车的时间为T,以上物理量的单位均为国际单位,若乘坐小面包到达老区的时间小于步行的时间,小明就会选择乘坐小面包,否则他将步行去老区。

    输入

    多组测试数据,每组4个数据D,X,Y,T。(0<D,X,Y<=10000,0<=T<=10000)

    输出

    若小明选择乘坐小面包,输出"YES",否则输出"NO"。

    样例输入

    10 10 5 0
    10 10 5 1

    样例输出

    YES
    NO

    签到题

    #include<iostream>
    using namespace std;
    int main()
    {
        float d, x, y, t, t1, t2;
        while (cin >> d >> x >> y >> t)
        {
            t1 = d / x + t;
            t2 = d / y;
            if (t1 < t2)
                cout << "YES" << "
    ";
            else
                cout << "NO" << "
    ";
        }
        return 0;
    }


    D、土豪我们做朋友吧

    E、二分查找的最大次数

    F、遍历数组的最小代价,后面再补,- -

    G、中位数

    H、挖金子

    I、

    小明的神器(1096)

    问题描述

    小明有一个神器,上面有 n个 孔,每个孔都可以喷水,每个孔只能喷一次水且只能持续一秒,小明不想让水喷出来,所以他就用手指去堵住孔(一根手指能且只能堵住一个孔),试问小明能否在任意时刻都不让水喷出来(小明一共有十根手指)。

    输入

    多组数据。

    每组数据第一行为n(0<n<=10^4),代表神器上孔的个数,第二行n个数,代表每个孔喷水的时刻ti(0<=ti<=10^5)

    输出

    若小明在任意时刻都不会让水喷出,则输入“YES”,否则输出“NO”

    样例输入

    3
    1 2 3
    11
    2 2 2 2 2 2 2 2 2 2 2

    样例输出

    YES
    NO

    签到题、

    #include<iostream>
    #include<cstdio>
    #include<algorithm>
    using namespace std;
    #define N 1000010
    
    int n,a[N];
    void solve()
    {
        sort(a,a+n);
        int cnt=1;
        for(int i=1;i<=n;i++){
            if(a[i]!=a[i-1] || i==n){
                if(cnt>10){
                    cout<<"NO"<<"
    ";
                    return ;
                }
                cnt=1;
            }
            else
                cnt++;
        }
        cout<<"YES"<<"
    ";
    }
    int main()
    {
        while(cin>>n)
        {
            for(int i=0;i<n;i++)
                cin>>a[i];
            solve();
        }
        return 0;
    }


    J、2014

    趁着还有梦想、将AC进行到底~~~by 452181625
  • 相关阅读:
    leetcode 7.删除有序数组中的重复项
    python 插入排序
    C# 异常处理
    C# 正则表达式
    C# 特性(Attribute)
    C# 预处理器指令
    C# 命名空间(Namespace)
    C# 文件的输入与输出
    C# 反射(Reflection)
    Python入门示例系列37 常用函数
  • 原文地址:https://www.cnblogs.com/hate13/p/4507553.html
Copyright © 2020-2023  润新知