UVa 10055 - Hashmat the Brave Warrior
2016-06-14 16:48
567 查看
时间限制:3秒
Hashmat 是个勇敢的战士,带着一票年轻的战士们跑去打仗。然后打仗之前他要先对比一下自己人数比对面人数差多少,然后决定打不打(Hashmat 的人数始终比对面少)……
真是勇敢的战士……嗯……
输入是一行两个数,分别是Hashmat 的人数和对面的人数,或者反过来。人数不大于2^32,输入读到EOF结束。
输出两边人数差多少。
其实就是输入两个数输出差的绝对值。
注意的地方其实就两个:
一个小坑是两个数谁大谁小不确定,虽然原文里Hashmat 的人数一定小于对面,但是输入次序不一定是Hashmat在前。
另一个坑是数据不大于2^32,也就是说可能等于2^32,超出了int的上限。
当年刷UVa的一血就这个……
哎哎!?
好像UVa可以交Python3的代码了欸,甚好,甚好……
顺手写了个Python3版本的,不过这个EOF好像略烦啊……不知道这么写是不是标准做法……
Hashmat 是个勇敢的战士,带着一票年轻的战士们跑去打仗。然后打仗之前他要先对比一下自己人数比对面人数差多少,然后决定打不打(Hashmat 的人数始终比对面少)……
真是勇敢的战士……嗯……
输入是一行两个数,分别是Hashmat 的人数和对面的人数,或者反过来。人数不大于2^32,输入读到EOF结束。
输出两边人数差多少。
其实就是输入两个数输出差的绝对值。
注意的地方其实就两个:
一个小坑是两个数谁大谁小不确定,虽然原文里Hashmat 的人数一定小于对面,但是输入次序不一定是Hashmat在前。
另一个坑是数据不大于2^32,也就是说可能等于2^32,超出了int的上限。
当年刷UVa的一血就这个……
#include <iostream> using std::cin; using std::cout; using std::endl; int main() { unsigned long long a, b; while(cin >> a >> b) { cout << (a > b ? a - b : b - a) << endl; } return 0; }
哎哎!?
好像UVa可以交Python3的代码了欸,甚好,甚好……
顺手写了个Python3版本的,不过这个EOF好像略烦啊……不知道这么写是不是标准做法……
while True: try: line = input() except EOFError: break data = [int(i) for i in line.split()] a = data[0] b = data[1] print(abs(a - b))
相关文章推荐
- 1.10055 - Hashmat the brave warrior
- 2.10071 - Back to High School Physics
- 3.458 - The Decoder
- 4.694 - The Collatz Sequence
- 6.494 - Kindergarten Counting Game
- 7.490 - Rotating Sentences
- 8.414 - Machined Surfaces
- 9.488 - Triangle Wave
- A.457 - Linear Cellular Automata
- B.489 - Hangman Judge
- C.445 - Marvelous Mazes
- 1.10494 - If We Were a Child Again
- 2.424 - Integer Inquiry
- 3.10250 - The Other Two Trees
- 5.465 - Overflow
- 6.113 - Power of Cryptography
- 7.10161 - Ant on a Chessboard
- 8.621 - Secret Research
- 9.401 - Palindromes
- A.537 - Artificial Intelligence?