彩票的号码有 6 位数字,若一张彩票的前 3 位上的数之和等于后 3 位上的数之和,则称这张彩票是幸运的。本题就请你判断给定的彩票是不是幸运的。
输入格式:
输入在第一行中给出一个正整数 N(≤ 100)。随后 N 行,每行给出一张彩票的 6 位数字。
输出格式:
对每张彩票,如果它是幸运的,就在一行中输出 You are lucky!
;否则输出 Wish you good luck.
。
输入样例:
复制代码
1
2
3
42 233008 123456
输出样例:
复制代码
1
2You are lucky! Wish you good luck.
法一:将票号作为一个数
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
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
50
51
52
53
54
55#include <iostream> #include <iomanip> using namespace std; struct jiang { int num; string outcome; }; bool win(int x) { int certain[10]; int y = 0; while (x != 0) { y++; certain[y] = x % 10; x /= 10; } if (y < 6) for (int i = y + 1; i <= 6; i++) certain[i] = 0; int former = 0, latter = 0; for (int i = 1; i <= 3; i++) latter += certain[i]; for (int i = 4; i <= 6; i++) former += certain[i]; if (former == latter) return true; else return false; } int main() { int n; cin >> n; int t = -1; jiang x[n]; for (int i = 0; i < n; i++) { cin >> x[i].num; if (win(x[i].num)) { t++; x[i].outcome = "You are lucky!"; } else { t++; x[i].outcome = "Wish you good luck.";; } } for (int i = 0; i < n; i++) cout << x[i].outcome << endl; return 0; }
法二:将票号作为6个个位数:
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21#include <iostream> using namespace std; bool win(char a[]) { return (a[0] + a[1] + a[2] == a[3] + a[4] + a[5]) ? true : false; } int main() { int n; cin >> n; string outcome[100]; for (int i = 0; i < n; i++) { char input[6]; cin >> input; outcome[i] = win(input) ? "You are lucky!" : "Wish you good luck."; } for (int i = 0; i < n; i++) cout << outcome[i] << endl; return 0; }
最后
以上就是幽默信封最近收集整理的关于L1-062 幸运彩票(15分)的全部内容,更多相关L1-062内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复