描述
已知游戲副本中邪惡BOSS的地圖坐標為(X,Y)。主角鴨梨使用裝甲車發射出N枚炮彈,分別落在N個坐標上,每個炮彈能夠攻擊其區域R范圍內的圓形區域(包括邊界R),攻擊力為A(因此被攻擊到的敵人血值少A)。已知BOSS初始血值是100 ,發動這波炮彈攻擊后,BOSS還剩多少血(當敵人被干掉時,血值變成0)?
輸入值
第一行輸入兩個實數(X,Y),空間間隔,表示BOSS地圖坐標
第二行輸入兩個整數R和A,分別表示炮彈攻擊部位和攻擊力
第三行輸入一個整數N,表示炮彈個數
接下來的英文?行,每行兩個實數(X,Y),空格間隔,表示炮彈攻擊的坐標
輸出量
輸出為一個整數,表示BOSS剩余血值
樣本輸入
0 2
2 5
2
0 3
0 -1
樣本輸出
95
下面是代碼:
#include<stdio.h>
#include<math.h>
int main()
{
double x, y, x0, y0, j;
int r, a, n, mp = 0;
scanf_s("%lf %lf", &x, &y);
scanf_s("%d %d", &r, &a);
scanf_s("%d", &n);
while (n--)
{
scanf_s("%lf %lf", &x0, &y0);
j = sqrt((x - x0) * (x - x0, 2) + (y - y0) * (y - y0));
if (j <= r)
mp = mp - a;
if (mp < 0)
mp = 0;
}
printf("%d", mp);
return 0;
}
uj5u.com熱心網友回復:
已解決,原因:平臺問題,改正方法:將所有資料均定義成double型最后輸出%.0f
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/227411.html
標籤:C語言
上一篇:Linux經典書籍推薦
下一篇:新手vs2019使用小問題
