Zerojudge 基礎題庫d489 伏林的三角地
這題在知道海龍公式時非常簡單,但不知道的人真的會燒掉~
因為他說平方後是整數,不代表沒平方時是整數。
像是 2 和 2^1/2
偏偏float無法表示無理數,所以用普通方法算出面積不是明智之舉。
所以提示只有一個:海龍公式!
s = (a+b+c) / 2
area^2 = s(s-a)(s-b)(s-c)
下面是程式碼:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | #include<iostream> using namespace std; int tri_area_power2(int a,int b,int c){ int s = (a+b+c)/2; return s*(s-a)*(s-b)*(s-c); } int main(){ int a,b,c; while(cin >> a >> b >> c){ cout << tri_area_power2(a,b,c) << endl; } } |
留言
張貼留言