我的PAT系列文章更新重心已移至Github,歡迎來看PAT題解的小伙伴請到Github Pages瀏覽最新內容。此處文章目前已更新至與Github Pages同步。歡迎star我的repo。
題目
在數學中,矩陣的“譜半徑”是指其特征值的模集合的上確界。換言之,對于給定的 個復數空間的特征值 {
},它們的模為實部與虛部的平方和的開方,而“譜半徑”就是最大模。
現在給定一些復數空間的特征值,請你計算并輸出這些特征值的譜半徑。
輸入格式:
輸入第一行給出正整數 N( 10 000)是輸入的特征值的個數。隨后 N 行,每行給出 1
個特征值的實部和虛部,其間以空格分隔。注意:題目保證實部和虛部均為絕對值不超過 1000 的整數。
輸出格式:
在一行中輸出譜半徑,四舍五入保留小數點后 2 位。
輸入樣例:
5
0 1
2 0
-1 0
3 3
0 -3
輸出樣例:
4.24
思路
真的好簡單,題目輸入范圍也很小,也沒有什么輸入格式的特例。
代碼
最新代碼@github,歡迎交流
#include <stdio.h>
#include <math.h>
int main()
{
int N, R, I, norm = 0;
scanf("%d", &N);
for(int i = 0; i < N; i++)
{
scanf("%d %d", &R, &I);
if(R * R + I * I > norm)
norm = R * R + I * I;
}
printf("%.2lf", sqrt(norm));
return 0;
}