Submission #308319

#TimeUsernameProblemLanguageResultExecution timeMemory
308319luciocfStrongbox (POI11_sej)C++14
0 / 100
3 ms512 KiB
#include <bits/stdc++.h>

using namespace std;

typedef long long ll;

const int maxn = 1e3+10;

bool mark[maxn];

ll a[maxn];

int main(void)
{
	ll n;
	int k;
	scanf("%lld %d", &n, &k);

	for (int i = 1; i <= k; i++)
		scanf("%lld", &a[i]);

	ll ans = a[k];

	for (ll i = 1; i*i <= a[k]; i++)
	{
		if (a[k]%i) continue;

		ll d = i;

		memset(mark, 0, sizeof mark);

		ll at = 0;
		bool ok = 1;

		while (!mark[at])
		{
			mark[at] = 1;

			for (int j = 1; j < k; j++)
				if (a[j] == at)
					ok = 0;

			at += d;
		}

		if (ok) ans = min(ans, d);

		memset(mark, 0, sizeof mark);

		d = a[k]/i;
		at = 0;
		ok = 1;

		while (!mark[at])
		{
			mark[at] = 1;

			for (int j = 1; j < k; j++)
				if (a[j] == at)
					ok = 0;

			at += d;
		}

		if (ok) ans = min(ans, d);
	}

	printf("%lld\n", n/ans);
}

Compilation message (stderr)

sej.cpp: In function 'int main()':
sej.cpp:17:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   17 |  scanf("%lld %d", &n, &k);
      |  ~~~~~^~~~~~~~~~~~~~~~~~~
sej.cpp:20:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   20 |   scanf("%lld", &a[i]);
      |   ~~~~~^~~~~~~~~~~~~~~
#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...