CF1139A Even Substrings

题目地址:CF1139A Even Substrings

一个数是偶数等价于其最后一位为偶数(2/4/6/8/0)

从左往右扫一遍,如果一个数是奇数则直接跳过,偶数则加上它对答案的贡献

这里的贡献应该为以它结尾的数的个数,自然就是它的下标了(下标从1开始)

注意开long long

#include <bits/stdc++.h>
#define ll long long
using namespace std;
const int N = 1e6 + 6;
int n;
char s[N];
ll ans;

int main() {
    cin >> n;
    scanf("%s", s + 1);
    for (int i = 1; i <= n; i++)
        if (!((s[i] - '0') & 1)) ans += i;
    cout << ans << endl;
    return 0;
}

猜你喜欢

转载自www.cnblogs.com/xht37/p/10594295.html
今日推荐