判断经验(能力值)的累加问题;
没有越级杀怪,经验正常累加,
若越级杀怪,使用最大公约数(辗转相除法)求出经验,进行累加;
#include<stdio.h>
int main()
{
    int a,b;
    while(~scanf("%d %d",&a,&b)){
        int sz[a],i=0;
        while(i<a){
            scanf("%d",&sz[i]);
            if(sz[i]<=b){b+=sz[i];}//没有越级杀怪,经验正常累加,
            else{
                int max=sz[i],min=b,com=0;//越级杀怪,使用最大公约数求出经验,进行累加;
                while(max%min!=0){//辗转相除法
                    com=max%min;
                    max=min;
                    min=com;
                }
                b+=min;
            }
            i++;
        }
        printf("%d\n",b);
    }
    
    return 0;
}