1. 程式人生 > >PAT 1063 計算譜半徑 python

PAT 1063 計算譜半徑 python

1063 計算譜半徑 (20 分)

在數學中,矩陣的“譜半徑”是指其特徵值的模集合的上確界。換言之,對於給定的 n 個複數空間的特徵值 { a​1​​+b​1​​i,⋯,a​n​​+b​n​​i },它們的模為實部與虛部的平方和的開方,而“譜半徑”就是最大模。

現在給定一些複數空間的特徵值,請你計算並輸出這些特徵值的譜半徑。

輸入格式:

輸入第一行給出正整數 N(≤ 10 000)是輸入的特徵值的個數。隨後 N 行,每行給出 1 個特徵值的實部和虛部,其間以空格分隔。注意:題目保證實部和虛部均為絕對值不超過 1000 的整數。

輸出格式:

在一行中輸出譜半徑,四捨五入保留小數點後 2 位。

輸入樣例:

5
0 1
2 0
-1 0
3 3
0 -3

輸出樣例:

4.24

作者: CHEN, Yue
單位: 浙江大學
時間限制: 200 ms
記憶體限制: 64 MB
程式碼長度限制: 16 KB

問題分析:
簡單計算+四捨五入

程式碼:

from math import sqrt
n = int(input())
l = []
for i in range(n):
    num = [int(i) for i in input().split()]
    l.append(sqrt(num[0] ** 2 + num[1] ** 2))
print('{:.2f}'.format(max(l)))