1.18寒假集训

发布时间:2024年01月18日

A:

解题思路:

这题看似很复杂,其实很简单,找规律不难发现就是输出n + 1

下面是c++代码:

#include<iostream>
using namespace std;
int main()
{
    int n;
    cin >> n;
    cout << n + 1;
    return 0;
}

B:

解题思路:

几种情况

第一种:没得分,两个0

第二种:得分小于10,一个0

第三种:得分超过10,取模等于0,一个0

下面是c++代码:

#include<iostream>
using namespace std;
int main()
{
    int sum = 0,red = 0,blue = 0;
    string s;
    cin >> s;
    for(int i = 0;i < s.length();i++){
        if(s[i] == 'a'){
            red++;
        }else{
            blue++;
        }
        if(red == 0){
            sum += 2;
        }
        if(blue == 0){
            sum += 2;
        }
        if(red > 0 && red < 10){
            sum += 1;
        }
        if(blue > 0 && blue < 10){
            sum += 1;
        }
        if(red % 10 == 0 && red != 0){
            sum += 1;
        }
        if(blue % 10 == 0 && blue != 0){
            sum += 1;
        }
    }
    cout << sum;
    return 0;
}

C:

解题思路:

只要一条对角线上的数相同就输出“YES”,否则“NO”

下面是c++代码:

#include<iostream>
using namespace std;
int main()
{
    int arr[2][2];
    for(int i = 0;i < 2;i++){
        for(int j = 0;j < 2;j++){
            cin >> arr[i][j];
        }
    }
    if(arr[0][0] == arr[1][1] || arr[0][1] == arr[1][0]){
        cout << "YES";
    }else{
        cout << "NO";
    }
    return 0;
}

D:

解题思路:

额,小学加减法问题,不多说了

下面是c++代码:

#include<iostream>
using namespace std;
int main()
{
    int a,b,c,d,e,A,B,C,D;
    cin >> a >> b >> c >> d >> e >> A >> B >> C >> D;
    if(a * A + b * B + c * C - d * D > e){
        cout << "YES";
    }else{
        cout << "NO";
    }
    return 0;
}

E:

解题思路:

将六个元音字母按大小顺序存放在一个数组里,遍历字符串,当某个字符不是元音字母时,倒着遍历元音数组,找到小于这个字符的元音字母,就将这个元音字母赋给当前字符,结束循环,判断下一个字符,注意一个坑,题目要求多组输入,换行输出,我在这里吃了亏。

下面是c++代码:

#include<iostream>
using namespace std;
int main()
{
    string s;
    char arr[6] = {'a','e','i','o','u','y'};
    while(cin >> s){
        for(int i = 0;i < s.length();i++){
            if(s[i] != 'a' && s[i] != 'a' && s[i] != 'e' && s[i] != 'i' && s[i] != 'o' && s[i] != 'u' && s[i] != 'y'){
                for(int j = 6;j >= 0;j--){
                    if(arr[j] < s[i]){
                        s[i] = arr[j];
                        break;
                    }
                }
            }
        }
        cout << s << endl;
    }
    return 0;
}

文章来源:https://blog.csdn.net/2301_81718511/article/details/135686226
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。