1063 計算譜半徑 (20 分)
題目要求
作者 | 單位 | 時間限制 | 內存限制 | 代碼長度限制 |
---|---|---|---|---|
CHEN, Yue | PTA聯盟 | 200ms | 64MB | 16KB |
題目內容:
在數學中,矩陣的“譜半徑”是指其特徵值的模集合的上確界。換言之,對於給定的 n 個複數空間的特徵值 { a1+b1i,⋯,an+bni},它們的模爲實部與虛部的平方和的開方,而“譜半徑”就是最大模。
現在給定一些複數空間的特徵值,請你計算並輸出這些特徵值的譜半徑。
輸入格式:
輸入第一行給出正整數 N(≤ 10 000)是輸入的特徵值的個數。隨後 N 行,每行給出 1 個特徵值的實部和虛部,其間以空格分隔。注意:題目保證實部和虛部均爲絕對值不超過 1000 的整數。
輸出格式:
在一行中輸出譜半徑,四捨五入保留小數點後 2 位。
輸入樣例
5
0 1
2 0
-1 0
3 3
0 -3
輸出樣例
4.24
代碼
#include <cstdio>
#include <cmath>
int main(int argc, char const *argv[])
{
int a;
float f = 0;
scanf("%d",&a);
while(a--)
{
int c,d;
scanf("%d %d",&c,&d);
float e = sqrt(c*c + d*d);
if (f < e) f = e;
}
printf("%.2f",f);
return 0;
}