题目描述 给出n个数(A1…An)现求一组整数序列(X1…Xn)使得S=A1X1+…AnXn>0,且S的值最小 输入输出格式 输入格式: 第一行给出数字N,代表有N个数 下面一行给出N个数 输出格式: S的最小值
输入输出样例 输入样例#1: 2 4059 -1782
输出样例#1: 99
说明 对于100%的数据,1≤n≤20∣xi∣≤100000
#include<iostream>
using namespace std;
int gcd(int a,int b){
if(b==0) return a;
return gcd(b,a%b);
}
int main(){
int n=0;
int ret=0;
cin>>n;
for(int i=1;i<=n;i++){
int temp=0;cin>>temp;
if(temp<0) temp=-temp;
ret=gcd(temp,ret);
}
cout<<ret<<endl;
return 0;
}