基本思路:唯一的考点就是最大公约数的求法吧。。

import java.util.*;
public class Main{
    public static void main(String[] args){
        Scanner sc=new Scanner(System.in);
        while(sc.hasNext()){
            int n=sc.nextInt();
            int x=sc.nextInt();
            int[] nums=new int[n];
            for(int i=0;i<n;i++){
                nums[i]=sc.nextInt();
                if(nums[i]<=x){
                    x+=nums[i];
                }
                else{
                    x+=gcd(x,nums[i]);
                }
            }
            System.out.println(x);

        }
    }
    public static int gcd(int a,int b){
        if(a<b) {
            int tmp=a;
            a=b;
            b=tmp;
        }
        return b==0?a:gcd(b,a-b);
    }
}