求解GCD -ACM

来源:互联网 发布:手机桌面 知乎 编辑:程序博客网 时间:2024/06/05 05:03

描述

给出n个 1到200000的正整数  (1<=n<=100)

你需要求出这n个数字的最大公约数。

输入

 第一行是数字n

下面n行是需要求的n个数字

输出

输出这n个数字的最大公约数

样例输入

3
18
63
36

样例输出

9


import java.util.Scanner;public class theGreatestCommonDivisor {public static void main(String[] args){Scanner scanner = new Scanner(System.in);int n = scanner.nextInt();int a = scanner.nextInt();while(n--!=1){int b = scanner.nextInt();a = gcd(a,b);}System.out.print(a);}public static int gcd(int a,int b){if(a<b){a^=b;b^=a;a^=b;}while(b!=0){int c=b;b=a%b;a=c;}return a;}}