CF908A New Year and Counting Cards 题解

Content

\(n\) 张卡牌,每张卡牌上只会有大小写字母和 \(0\sim 9\) 的阿拉伯数字。有这样一个描述:“如果卡牌正面写有元音字母(\(\texttt{A,E,I,O,U}\) 五个字母中的一个),那么它的反面必然是偶数”。你很想知道这个描述是否正确,因此你可以选择翻开一些卡牌来验证这个描述。求最坏情况下至少需要翻开的牌的数量。

数据范围:\(1\leqslant n\leqslant 50\)

Solution

我们只需要找到元音字母和奇数的牌翻开就行。为什么是奇数?因为这样的话如果反面是元音字母,那么就可以证明这个描述是错误的。

Code

int main() {
	string s;
	int ans = 0;
	cin >> s;
	for(int i = 0; i < s.size(); ++i)
		ans += (s[i] == 'A' || s[i] == 'a' || s[i] == 'E' || s[i] == 'e' || s[i] == 'I' || s[i] == 'i' || s[i] == 'o' || s[i] == 'O' || s[i] == 'U' || s[i] == 'u' || s[i] == '1' || s[i] == '3' || s[i] == '5' || s[i] == '7' || s[i] == '9');
	writeint(ans);
	return 0;
}
posted @ 2021-12-21 20:01  Eason_AC  阅读(45)  评论(0)    收藏  举报