[網易]炮臺攻擊
阿新 • • 發佈:2017-05-31
namespace 問題 限制 如果 敵人 () count class 就會
時間限制:1秒 空間限制:32768K 熱度指數:31252
題目描述
蘭博教訓提莫之後,然後和提莫討論起約德爾人,談起約德爾人,自然少不了一個人,那 就是黑默丁格------約德爾人歷史上最偉大的科學家. 提莫說,黑默丁格最近在思考一個問題:黑默丁格有三個炮臺,炮臺能攻擊到距離它R的敵人 (兩點之間的距離為兩點連續的距離,例如(3,0),(0,4)之間的距離是5),如果一個炮臺能攻擊 到敵人,那麽就會對敵人造成1×的傷害.黑默丁格將三個炮臺放在N*M方格中的點上,並且給出敵人 的坐標. 問:那麽敵人受到傷害會是多大?輸入描述:
第一行9個整數,R,x1,y1,x2,y2,x3,y3,x0,y0.R代表炮臺攻擊的最大距離,(x1,y1),(x2,y2), (x3,y3)代表三個炮臺的坐標.(x0,y0)代表敵人的坐標.
輸出描述:
輸出一行,這一行代表敵人承受的最大傷害,(如果每個炮臺都不能攻擊到敵人,輸出0×)
輸入例子:
1 1 1 2 2 3 3 1 2
輸出例子:
2x
1 #include<iostream> 2 #include<math.h> 3 using namespace std; 4 5 int main() 6 { 7 int R,x1,y1,x2,y2,x3,y3,x0,y0; 8 while(cin>>R>>x1>>y1>>x2>>y2>>x3>>y3>>x0>>y0)9 { 10 int dis1,dis2,dis3; 11 int count=0; 12 dis1=pow(x1-x0,2)+pow(y1-y0,2); 13 if(dis1<R*R) 14 count++; 15 dis2=pow(x2-x0,2)+pow(y2-y0,2); 16 if(dis2<R*R) 17 count++;18 dis3=pow(x3-x0,2)+pow(y3-y0,2); 19 if(dis3<R*R) 20 count++; 21 22 cout<<count<<"x"<<endl; 23 count=0; 24 } 25 return 0; 26 27 }
[網易]炮臺攻擊