蒜头君有n个数,他想要从中选出k个数,使得它们的最大公约数最大。
请你求出这个最大的最大公约数。
输入格式
第一行输入两个整数 。
第二行输入 个整数 。
输出格式
输出一个整数。
数据范围
样例输入1
4 3
2 4 8 3
样例输出1
2
样例输入2
4 2
4 8 6 6
样例输出1
6
#include <iostream>
#include <algorithm>
using namespace std;
int main() {
int n,k;
cin>>n>>k;
int a[n];
int i,j;
for(i=0;i<n;i++)
cin>>a[i];
sort(a,a+n);
int ans,max=a[n-1];
for(i=1;i<=max;i++)
{
int count=0;
for(j=0;j<n;j++)
if(a[j]%i==0)
count++;
if(count>=k)
ans=i;
}
cout<<ans;
return 0;
}