Codeforces Round #104 (Div.2)

比赛链接:https://codeforces.com/contest/146

题目:A. Lucky Ticket

样例1:

输入:

2
47

输出

NO

解释:只需要判断这个字符串的0 - n / 2 - 1 是否和n / 2 到n - 1的相等就可以了,并且这两个字符串中不能出现除了4,7以外的数字

#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
const int N = 1100;

int main()
{
    int n;
    string str;
    int a = 0,b = 0;
    cin >> n;
    cin >> str;
    
    for(int i = 0;i < n / 2;i ++){
        if(str[i] != '4' && str[i] != '7'){
            cout << "NO" << endl;
            return 0;
        }
        a += (str[i] - '0');
    }
    for(int i = n / 2;i < n;i ++){
        if(str[i] != '4' && str[i] != '7'){
            cout << "NO" << endl;
            return 0;
        }
        b += str[i] - '0';
    }
    
    if(a == b){
        cout << "YES" << endl;
    }else{
        cout << "NO" << endl;
    }
    
	return 0;
}

题目:B. Lucky Mask

样例1:

输入:

1 7

输出

7

解释:找到第一个比a大的是,并且这个字符串删除掉没用的数字后的幸运数为b;
这就是一个纯模拟题,按照题的思路做就好了

posted @ 2020-12-18 16:15  遇见生活  阅读(81)  评论(0编辑  收藏  举报