1. 程式人生 > >7-21 求特殊方程的正整數解

7-21 求特殊方程的正整數解

7-21 求特殊方程的正整數解 (15 分)

本題要求對任意給定的正整數N,求方程X​2​​+Y​2​​=N的全部正整數解。
輸入格式:

輸入在一行中給出正整數N(≤10000)。
輸出格式:

輸出方程X​2​​+Y​2​​=N的全部正整數解,其中X≤Y。每組解佔1行,兩數字間以1空格分隔,按X的遞增順序輸出。如果沒有解,則輸出No Solution。
輸入樣例1:

884

輸出樣例1:

10 28
20 22

輸入樣例2:

11

輸出樣例2:

No Solution

N=eval(input())

flag=False
for i in range(1,N+1):
    for j in range(1,N+1):
        if pow(i,2)+pow(j,2)==N:
            if i<=j:
                print(i,j)
                flag=True
if flag==False:
    print('No Solution')

用這段程式碼跑兩個樣例都對,但是在平臺上執行超時
第一次感受到python的弊端