7-21 求特殊方程的正整數解
7-21 求特殊方程的正整數解 (15 分)
本題要求對任意給定的正整數N,求方程X2+Y2=N的全部正整數解。
輸入格式:
輸入在一行中給出正整數N(≤10000)。
輸出格式:
輸出方程X2+Y2=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的弊端
相關推薦
7-21 求特殊方程的正整數解
7-21 求特殊方程的正整數解 (15 分) 本題要求對任意給定的正整數N,求方程X2+Y2=N的全部正整數解。 輸入格式: 輸入在一行中給出正整數N(≤10000)。 輸出格式: 輸出方程X2+Y2=N的全部正整數解,其中X≤Y。每組解佔1行,兩數字間以
7-1 求特殊方程的正整數解 (10 分)
#include <stdio.h> #include <math.h> int main() { int n, i, j, flag = 0; scanf("%d", &n); for(i = 0; i <sqrt(n); i++)
poj 1601(擴充套件歐幾里德求不定方程的整數解)
歐幾里德的原理:(轉)http://www.cnblogs.com/void/archive/2011/04/18/2020357.html 擴充套件歐幾里德演算法是用來在已知a, b求解一組p,q使得p * a+q * b = Gcd(p, q) (解一定存在,根據數論
【c++】求特殊方程的正整數解
本題要求對任意給定的正整數NN,求方程X2+Y2=N的全部正整數解。 輸入格式: 輸入在一行中給出正整數N(N≤10000)。 輸出格式: 輸出方程X2+Y2=N的全部正整數解,其中X≤Y。每組
【資料結構查詢】POJ1840——求五元三次方程的整數解個數
問題描述: 給定五元三次方程的全部係數,求出解不等於0且為[−50,50][-50,50][−50,50]之間的整數的個數。 求解方法: 將後兩項移到等式的右邊,並將前三項的全部結果遍歷出來並打表
POJ 2142 The Balance [不定方程和最小的正整數解]【數論】
——————————————–. The Balance Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 5998 Accepted: 2610 Descript
7-21 求前綴表達式的值(25 分)
str 掃描 元素 class pos 求值 gpo blog body 前綴表達式的計算機求值:從右至左掃描表達式,遇到數字時,將數字壓入堆棧,遇到運算符時,彈出棧頂的兩個數,用運算符對它們做相應的計算(棧頂元素 op 次頂元素),並將結果入棧;重復上述過程直到表達式最左
求兩個正整數的最大公約數和最小公倍數
公倍數 最大 sys static () 一個 AR ati scanner import java.util.Scanner;public class Gyb { public static void main(String[] args) {
深入淺出學演算法006-求不定方程的所有解
4005: 深入淺出學演算法006-求不定方程的所有解 Time Limit: 1 Sec Memory Limit: 64 MB Submit: 5139 Solved: 2159 Description 現有一方程ax+by=c,其中係數a、b、c均為整數,求符合條件的所有正整數解,要求
資料結構與演算法題目集7-21——求字首表示式的值
我的資料結構與演算法題目集程式碼倉:https://github.com/617076674/Data-structure-and-algorithm-topic-set 原題連結:https://pintia.cn/problem-sets/15/problems/836 題目描述:
7-21 求字首表示式的值(二叉樹)
算術表示式有字首表示法、中綴表示法和字尾表示法等形式。字首表示式指二元運算子位於兩個運算數之前,例如2+3*(7-4)+8/4的字首表示式是:+ + 2 * 3 - 7 4 / 8 4。請設計程式計算字
牛客網——華為機試(題15:求int型正整數在記憶體中儲存時1的個數)(Java)
題目描述: 輸入一個int型的正整數,計算出該int型資料在記憶體中儲存時1的個數。 輸入描述: 輸入一個整數(int型別) 輸出描述: 這個數轉換成2進位制後,輸出1的個數 示例1: 輸入: 5 輸出: 2 程式碼: import java.ut
C語言例子(3)之求兩個正整數的最大公約數及最小公倍數
# include <stdio.h> void main() { int x, y, num1, num2, temp; printf("請輸入兩個正整數:\n"); scanf("%d %d", &num1, &num2); if(num1 <
求不定方程的所有解
#include<stdio.h> int main() { int n,m,t; int a,b,c; int i,j; while(scanf("%d",&t)!=EOF) { while(t--) {
擴充套件歐幾里得演算法(乘法逆元 最小正整數解 直線上的整數點)
參考資料: 本文證明過程來自百度百科和劉汝佳的演算法入門經典。 擴充套件歐幾里得演算法介紹: 前置知識:歐幾里得演算法(其實就是輾轉相除法,用於計算兩個整數a,b的最大公約數。) 歐幾里得演算法: 在開始之前,我們先說明幾個定理: gcd(a,b)=gcd(b,a
三種演算法求兩個正整數的最大公約數和最小公倍數;求三個數的最大公約數和最小公倍數
第二次作業 題目:求兩個正整數的最大公約數和最小公倍數。 基本要求:1.程式風格良好(使用自定義註釋模板),兩種以上演算法解決最大公約數問題,提供友好的輸入輸出。 提高要求:1.三種以上演算法解決兩個正整數最大公約數問題。 2.求
求三個正整數的最大公約數和最小公倍數
題目:求兩個正整數的最大公約數和最小公倍數。 基本要求:1.程式風格良好(使用自定義註釋模板),兩種以上演算法解決最大公約數問題,提供友好的輸入輸出。 提高要求:1.三種以上演算法解決兩個正整數最大公約數問題。 2.求3個正整數的最大公
歐幾里德演算法(求兩個正整數的最大公約數)
getchar()會接受前一個scanf的回車符 */ #include<stdio.h> void main() { int temp; int a,b; s
19.求兩個正整數的最大公約數和最小公倍數
clas 個數 pan 最大數 不為 while != ret 除法 1 #include <stdio.h> 2 #include <stdlib.h> 3 4 int main() 5 { 6 int m,n,r,t,p;
有關求任意一個正整數的n的因數的個數的求解思路
已知條件:n=p1^a1xp2^a2xp3^a3........xpk^ak;求解n的因數的個數; 求解的主要思想:遞迴 設所有的因數的個數為U1; 則U1會等於什麼呢? 不妨設求得p2^a2xp3^a3.......xpk^ak=U2; 則我們可以這樣考慮: