10159 2024. 03. 28 19:50:14 111 Az óvodai lét elviselhetetlen könnyűsége #2 cpp17 Hibás válasz 30/100 48ms 7852 KiB
#include <bits/stdc++.h>
using namespace std;

#define int long long

#define MA (int)1e5

signed main(){
	ios::sync_with_stdio(false);
	cin.tie(nullptr);
	int M,Q;
	cin>>M>>Q;
	vector<int>v(M);
	for(int i=0;i<M;i++){
		cin>>v[i];
	}
	sort(v.rbegin(),v.rend());
	int A=1e5;
	vector<int>dp(A);
	dp[0]=1;
	for(int i=1;i<A;i++){
		int h=0;
		for(int j=0;j<M&&j<100&&v[j]>h;j++){
			h=max(h,dp[i-1]*(v[j]-1)%v[j]);
		}
		if(h==0||dp[i-1]>1e7){
			A=i;
		}
		dp[i]=dp[i-1]+h;
	}
	while(Q--){
		int N;
		cin>>N;
		int l=0,h=A;
		while(l<h){
			int m=(l+h)/2;
			if(dp[m]>N){
				h=m;
			}
			else{
				l=m+1;
			}
		}
		cout<<(h==A?0:h)<<'\n';
	}
	return 0;
}
Részfeladat Összpont Teszt Verdikt Idő Memória
subtask1 0/0
1 Elfogadva 3ms 3164 KiB
2 Elfogadva 25ms 3524 KiB
subtask2 20/20
3 Elfogadva 4ms 3828 KiB
4 Elfogadva 4ms 4012 KiB
5 Elfogadva 4ms 4116 KiB
6 Elfogadva 17ms 4072 KiB
7 Elfogadva 9ms 4072 KiB
8 Elfogadva 7ms 4072 KiB
9 Elfogadva 8ms 4380 KiB
10 Elfogadva 7ms 4592 KiB
subtask3 10/10
11 Elfogadva 23ms 4860 KiB
12 Elfogadva 24ms 4772 KiB
13 Elfogadva 24ms 4968 KiB
14 Elfogadva 23ms 4988 KiB
15 Elfogadva 21ms 4992 KiB
16 Elfogadva 24ms 5248 KiB
17 Elfogadva 28ms 6580 KiB
subtask4 0/15
18 Hibás válasz 3ms 4932 KiB
19 Elfogadva 3ms 5236 KiB
20 Elfogadva 16ms 6844 KiB
21 Elfogadva 4ms 5284 KiB
22 Hibás válasz 17ms 7008 KiB
23 Elfogadva 3ms 5408 KiB
24 Elfogadva 3ms 5344 KiB
25 Elfogadva 3ms 5348 KiB
26 Elfogadva 3ms 5492 KiB
27 Elfogadva 14ms 6512 KiB
subtask5 0/55
28 Elfogadva 37ms 7116 KiB
29 Elfogadva 35ms 7196 KiB
30 Hibás válasz 27ms 5696 KiB
31 Hibás válasz 28ms 5652 KiB
32 Elfogadva 26ms 5956 KiB
33 Hibás válasz 26ms 5864 KiB
34 Elfogadva 32ms 5848 KiB
35 Elfogadva 28ms 6060 KiB
36 Hibás válasz 32ms 6404 KiB
37 Elfogadva 30ms 6488 KiB
38 Elfogadva 41ms 7136 KiB
39 Elfogadva 48ms 7852 KiB