Canadian Computing Competition: 2007 Stage 1, Senior #1
For the big election on February 27, 2007, the government has commissioned an electronic voting system, and you have been hired as a sub-subcontractor for this very grand programming project.
Your task is to write the system that determines whether a given person is old enough to vote. The voting age is 18, so given someone's birthday, you must determine whether that person will be 18 years of age on the day of the election.
Input Specification
The input will consist of a number () on a single line, indicating the number of birthdays to evaluate. Then, each of the following lines, will be of the form y m d
, where is the year of a potential voter's birth (), () is the month of birth, and () is the day. It is assured that each birthday is a correct and valid date.
Output Specification
For each date in the input, output a line with either Yes
if the voter is eligible to vote, or No
otherwise.
Sample Input
5
1933 10 29
1989 2 28
1961 11 23
1999 12 31
1989 2 27
Output for Sample Input
Yes
No
Yes
No
Yes
Comments
Why is Test case #4 always an IR for me?
Do we need to worry about leap years?
Leap year inputs are valid. This problem adheres to the real life standard around when someone born on February 29th is legally allowed to vote.
What's with test case 4?
Just to give you guys some hints. 1989 2 27 would be the date that's 18 years before the election. (You guys gonna figure it out anyway, just saving some times y'all)
I was exactly 0 years, 0 months and 0 days old during the election
bariumlanthanum
bro. im born on the same day as you. same month. same year.
yesterday was your birthday, happy belated birthday
Took forever until realized that I did "yes" and "no" instead of "Yes" and "No" :(((.
I almost made that mistake until I saw your comment. Thanks!
So the first letter in the two output options needs to be capitalized, u got me there
This comment is hidden due to too much negative feedback. Show it anyway.
1) You misspelled Length (Who cares? I can't spell either) 2) It shouldn't matter. And for the record, the rule is every year that is divisible by 4, other than those that are divisible by 100, but those that are divisible by 400 are still leap years.
E.g. 2000 is a leap year, 2100 is not, and 2004 is.