標籤:ring ima scan class turn its call single different
最近Codeforces放了個彩蛋,讓我們這幾天可以改一下名字的顏色,還送給我們一次改名機會(然而這個並沒有什麼卵用)。
於是一個快要成newbie的人,成功讓自己變身紅名user:)
然而還是回到殘忍的現實,看一下“美好”的“Goodbye 2017”比賽(表示本蒟蒻第二題都炸了)。
A:New Year and Counting Cards
Your friend has n cards.
You know that each card has a lowercase English letter on one side and a digit on the other.
Currently, your friend has laid out the cards on a table so only one side of each card is visible.
You would like to know if the following statement is true for cards that your friend owns: "If a card has a vowel on one side, then it has an even digit on the other side." More specifically, a vowel is one of ‘a‘, ‘e‘, ‘i‘, ‘o‘ or ‘u‘, and even digit is one of ‘0‘, ‘2‘, ‘4‘, ‘6‘ or ‘8‘.
For example, if a card has ‘a‘ on one side, and ‘6‘ on the other side, then this statement is true for it. Also, the statement is true, for example, for a card with ‘b‘ and ‘4‘, and for a card with ‘b‘ and ‘3‘ (since the letter is not a vowel). The statement is false, for example, for card with ‘e‘ and ‘5‘. You are interested if the statement is true for all cards. In particular, if no card has a vowel, the statement is true.
To determine this, you can flip over some cards to reveal the other side. You would like to know what is the minimum number of cards you need to flip in the worst case in order to verify that the statement is true.
Input
The first and only line of input will contain a string s (1?≤?|s|?≤?50), denoting the sides of the cards that you can see on the table currently. Each character of s is either a lowercase English letter or a digit.
Output
Print a single integer, the minimum number of cards you must turn over to verify your claim.
Examplesinput
ee
output
2
input
z
output
0
input
0ay1
output
2
Note
In the first sample, we must turn over both cards. Note that even though both cards have the same letter, they could possibly have different numbers on the other side.
In the second sample, we don‘t need to turn over any cards. The statement is vacuously true, since you know your friend has no cards with a vowel on them.
In the third sample, we need to flip the second and fourth cards.
大意:給出幾張卡片(可能數字在上或字母在上),你的friend提出了一個命題:“所有母音字母卡片,它背面的數字都是偶數。”算出要驗證這個命題,至少要翻多少張卡片。
題解:其實題目就是判斷字串中a,e,i,o,u,1,3,5,7,9的個數(輔音字母背面的數字是奇數或是偶數不重要),題意理解了一切就簡單了。
1 #include <stdio.h> 2 #include <string.h> 3 char s[55]; 4 int main() 5 { 6 int len,ans=0; 7 scanf("%s",s); 8 len=strlen(s); 9 for(int i=0;i<len;i++)10 {11 char c=s[i];12 if(c>=‘0‘&&c<=‘9‘)13 {14 int num=c-‘0‘;15 if(num%2)ans++;16 }17 else if(c==‘a‘||c==‘e‘||c==‘i‘||c==‘o‘||c==‘u‘)ans++;18 }19 printf("%d",ans);20 return 0;21 }View Code
[CF908X]Goodbye 2017!(A、B、C)(更新中)