B - MaratonIME challenges USPGameDev
Problem Description
Year after year, MaratonIME (group that authored this contest) and USPGameDev (game developing group at USP) fight epic clashes that last for centuries over which group will get each freshman to join them. This year, Russo (from MaratonIME) challenged Wil (from USPGameDev) to a dangerous match of darts.
Each one of them has already thrown their darts at the bullseye, but they can't decide which one of them got closest to hitting the center of it. Each one of them claims to have won the match. You, as a fair freshman, decided to judge the clash yourself.
Two points on the 2d plane are given, r, the point where Russo's dart hit, and w, the point where Wil's dart hit. If r is closest to the origin (0, 0) than w, Russo won and you should print out "Russo" (no quotes) and join MaratonIME. If w and r are equally close to the origin, there's a draw, you should print "Empate" (no quotes), which stands for "Draw" in portuguese, and join MaratonIME, because that was the agreed draw outcome. If w is closest to the origin than r, you should print "Wil" (no quotes) and join MaratonIME anyway, because it is the coolest group.
Input
On the first line of the input, a pair of integers xr and yr is given, the coordinates hit by Russo. On the second line another pair of integers xw and yw is given, the coordinates hit by Wil. Every coordinate is guaranteed not to exceed 10000 on absolute value, formally, - 10000 ≤ xr, yr, xw, yw ≤ 10000.
Output
A single line containing "Russo", "Wil" or "Empate", acording to statement's instructions.
Examples
Input
2 1 3 0Output
Russo
Input
10000 0 10000 1Output
Russo
代码如下:
Hint:题目大概意思就是:输入a、b和c、d分别代表两个人在圆盘上的坐标,我们需要判断谁离原点(0,0)最近;即a方加b方与c方加d方比较,小的那一个最近,即输出对应的人名。注意有特殊情况。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
double a, b, c, d, r, w; // 用double存数据以免数据过大
scanf("%lf %lf", &a, &b);
scanf("%lf %lf", &c, &d);
r = a * a + b * b;
w = c * c + d * d;
if(r < w)
printf("Russo\n");
else if(r == w)
printf("Empate\n"); // 注意判断二者有距离相同的情况
else
printf("Wil\n");
return 0;
}