HDU 3105 Fred's Lotto Tickets(数学题)
时间:2014-10-06 21:17:51
收藏:0
阅读:175
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3105
Problem Description
Fred likes to play the lotto. Whenever he does, he buys lots of tickets. Each ticket has 6 unique numbers in the range from 1 to 49, inclusive. Fred likes to ``Cover all his bases." By that, he means that he likes for each set of lottery tickets to contain
every number from 1 to 49, at least once, on some ticket. Write a program to help Fred see of his tickets ``Cover all the bases."
Input
The input file consists of a number of test cases. Each case starts with an integer N ( 1<=N<=100 ), indicating the number of tickets Fred has purchased. On the next N lines are the tickets, one per line. Each ticket will have exactly 6 integers, and all of
them will be in the range from 1 to 49 inclusive. No ticket will have duplicate numbers, but the numbers on a ticket may appear in any order. The input ends with a line containing only a `0‘.
Output
Print a list of responses for the input sets, one per line. Print the word `Yes‘ if every number from 1 to 49 inclusive appears in some lottery ticket in the set, and `No‘ otherwise. Print these words exactly as they are shown. Do not print any blank lines
between outputs.
Sample Input
1 1 2 3 4 5 6 9 1 2 3 4 5 6 10 9 8 7 12 11 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 19 34 27 25 13 0
Sample Output
No Yes
Source
代码如下:
#include <cstdio> #include <cstring> int main() { int a[1100]; int n; while(scanf("%d",&n) && n) { int tt; memset(a,0,sizeof(a)); for(int i = 0; i < n; i++) { for(int j = 0; j < 6; j++) { scanf("%d",&tt); a[tt]++; } } int i; for(i = 1; i <= 49; i++) { if(a[i] == 0) break; } if( i < 49) { printf("No\n"); } else printf("Yes\n"); } return 0; }
原文:http://blog.csdn.net/u012860063/article/details/39831485
评论(0)