Test Message

b884: 電腦教室的傑克

內容

傑克是位認真的學生,每次在資訊社個總是全神貫注的聆聽,但他坐的心情會隨著位置改變

現在給你傑克位置(x,y),老師位置(0,0),有一個距離公式 yee,yee=100-r*r

r=√Δx+Δy


輸入

第一行有一個 n,代表有 n 行.測資,接下來有 n 行 x 和 y 代表傑克的位置。

1
20 20

輸出

如果 0<yee<=30,輸出 “sad!” ,如果 30<yee<=60,輸出”hmm~~”,如果 60<yee<100,輸出”Happyyummy”,如果 yee 超出範圍,輸出”evil!!”(不含雙引號)

hmm~~


解題思路

看似複雜,不過代換一下公式 :

  1. yee = 100 - r²
  2. yee = 100 - (√(x + y))² (r = (x + y)²)
  3. yee = 100 - (x + y)
  4. yee = 100 - x - y

就會發現其實只需要四則運算就能得到答案了,剩下就是基本的條件判斷。


完整程式碼

AC (2ms, 112KB)
#include <stdio.h>

int main()
{
int n, x, y, yee;
scanf(" %d", &n);
while (n--)
{
scanf(" %d %d", &x, &y);
yee = 100 - x - y;
if (yee <= 0) puts("evil!!");
else if (yee <= 30) puts("sad!");
else if (yee <= 60) puts("hmm~~");
else if (yee < 100) puts("Happyyummy");
else puts("evil!!");
}
return 0;
}