1255 勾股数
Description
勾股數
題目描述
勾股數是指滿足a2+b2=c2的正整數,比如最有名的“勾三股四弦五”。
現在給你兩個正整數,請問是否存在另外一個正整數,使其成為“勾股數”?
輸入
第一行是一個整數K,表示樣例的個數。 以后每行一個樣例,為兩個整數x,y,(1≤x,y≤10000)。
輸出
每行輸出一個樣例的結果。如果不能構成勾股數,輸出“None”,如果存在多個,輸出最小的那個。
樣例輸入
3
3 4
2 6
12 13
樣例輸出
5
None
5
Sample Input
Sample Output
Source
#include <stdio.h> int main() {int k;scanf("%d",&k);while(k--){int x,y;int flag=0;//做一個是否構成勾股數的判斷標記scanf("%d%d",&x,&y);//先對x,y進行排序int t;if(x>y){t=x;x=y;y=t;}//三角形邊長的性質int a,b,i;a=y-x;b=y+x;for(i=a+1;i<b;i++){if(y*y-x*x==i*i || y*y+x*x==i*i){printf("%d\n",i);flag=1;break;}}if(flag==0)//根據標記輸出None{printf("None\n");}}return 0; }總結
- 上一篇: C语言初学者必学必会的C语言必背100代
- 下一篇: C++数据结构,三万字详解(强烈建议收藏