Given the N integers, you have to find the maximum GCD (greatest common divisor) of every possible pair of these integers.
The first line of input is an integer N (1 < N < 100) that determines the number of test cases. The following N lines are the N test cases. Each test case contains M (1 < M < 100) positive integers that you have to find the maximum of GCD.
For each test case show the maximum GCD of every possible pair.
3 10 20 30 40 7 5 12 125 15 25
20 1 25
大水题
#include<stdio.h>#include<string.h>#include<algorithm>using namespace std;char s[3000];int a[102];int gcd(int a,int b){ return b?gcd(b,a%b):a;}int main(){ int n; scanf("%d",&n);getchar(); while(n--){ gets(s); int len=strlen(s); int u=0; for(int i=0;i<len;i++){ int sum=0; while(i<len&&s[i]!=' '){ sum=sum*10+s[i]-'0'; i++; } a[u++]=sum; } int ans=0; for(int i=0;i<u;i++) for(int j=i+1;j<u;j++) ans=max(ans,gcd(a[i],a[j])); PRintf("%d/n",ans); } return 0;}新闻热点
疑难解答