题目1221: 最大公约数

来源:互联网 发布:淘宝网太极武术鞋 编辑:程序博客网 时间:2024/05/17 03:52

题目描述

读入n个正整数,求出这n个数的最小值、最大值以及它们两的最大公约数,并输出。number.in中第一行为n,接下来为n个大于零的整数。    

 

输入

 第一行为n。第二行是n个大于零的整数,用空格隔开。

 

输出

 分别输出最小值、最大值和它们两的最大公约数,用空格隔开。

 

样例输入
3
4 8 6
 

样例输出
4 8 4
 

提示 [+]

*** 提示已隐藏,点击上方 [+] 可显示 ***

 

来源

2012年中国科技大学计算机研究生机试真题

 


/********************************* *   日期:2013-3-19*   作者:SJF0115 *   题号: 题目1221: 最大公约数*   来源:http://ac.jobdu.com/problem.php?pid=1221*   结果:AC *   来源:2012年中国科技大学计算机研究生机试真题*   总结: **********************************/ #include<stdio.h>#include<limits.h>#include<string.h>int GCD(int a,int b){if(b == 0){return a;}else{return GCD(b,a%b);}}int main () {int i,N,Min,Max,x,c;    while(scanf("%d",&N) != EOF){Min = INT_MAX;Max = INT_MIN;//最大值 最小值for(i = 0;i < N;i++){scanf("%d",&x);if(Min > x){Min = x;}if(Max < x){Max = x;}}//最大公约数c = GCD(Max,Min);printf("%d %d %d\n",Min,Max,c);    }//while    return 0;}



可以参考博文:最大公约数

这里提供了几种求法。