Submission #200463

#TimeUsernameProblemLanguageResultExecution timeMemory
200463SortingStrongbox (POI11_sej)C++14
70 / 100
1089 ms6500 KiB
#include <bits/stdc++.h>

using namespace std;

vector<long long > divisors, m;

int main(){
	ios::sync_with_stdio(false);
	cin.tie(NULL);

	long long n, k;
	cin >> n >> k;

	m.resize(k);
	for(int i = 0; i < k; ++i)
		cin >> m[i];

	
	for(long long d = 1; d * d <= n; ++d){
		if(n % d == 0){
			divisors.push_back(d);
			if(n / d != d)
				divisors.push_back(n / d);
		}
	}

	sort(divisors.begin(), divisors.end());
	for(long long d: divisors){
		if(m[k - 1] % d != 0)
			continue;

		bool ok = true;
		for(int i = 0; i < k - 1; ++i){
			if(m[i] % d == 0){
				ok = false;
				break;
			}
		}

		if(ok){
			cout << n / d << "\n";
			return 0;
		}
	}

	cout << "0\n";
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...