問題はこちら
No.419 直角三角形 - yukicoder
必要ならaとbを入れ替えることでa≦bとする
当然、斜辺は他の2辺より長いことに注意する
a≠bのとき、bを斜辺とすることで最後の一辺は√(b*b-a*a)となる
a=bのとき、a,bを斜辺にすることは出来ないので、最後の一辺が斜辺となり√(b*b+a*a)
int main(){ int a,b; scanf("%d%d",&a,&b); printf("%f",a==b?sqrt(a*a+b*b):sqrt(abs(a*a-b*b))); return 0; }
ちょっと考えて次のようにまとまる
a;main(b){a=scanf("%d%d",&a,&b)>printf("%f",sqrt(abs(a*a-b*b)?:2*a*a));}
72B