101592024-03-28 19:50:14111Az óvodai lét elviselhetetlen könnyűsége #2cpp17Hibás válasz 30/10048ms7852 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ÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva3ms3164 KiB
2Elfogadva25ms3524 KiB
subtask220/20
3Elfogadva4ms3828 KiB
4Elfogadva4ms4012 KiB
5Elfogadva4ms4116 KiB
6Elfogadva17ms4072 KiB
7Elfogadva9ms4072 KiB
8Elfogadva7ms4072 KiB
9Elfogadva8ms4380 KiB
10Elfogadva7ms4592 KiB
subtask310/10
11Elfogadva23ms4860 KiB
12Elfogadva24ms4772 KiB
13Elfogadva24ms4968 KiB
14Elfogadva23ms4988 KiB
15Elfogadva21ms4992 KiB
16Elfogadva24ms5248 KiB
17Elfogadva28ms6580 KiB
subtask40/15
18Hibás válasz3ms4932 KiB
19Elfogadva3ms5236 KiB
20Elfogadva16ms6844 KiB
21Elfogadva4ms5284 KiB
22Hibás válasz17ms7008 KiB
23Elfogadva3ms5408 KiB
24Elfogadva3ms5344 KiB
25Elfogadva3ms5348 KiB
26Elfogadva3ms5492 KiB
27Elfogadva14ms6512 KiB
subtask50/55
28Elfogadva37ms7116 KiB
29Elfogadva35ms7196 KiB
30Hibás válasz27ms5696 KiB
31Hibás válasz28ms5652 KiB
32Elfogadva26ms5956 KiB
33Hibás válasz26ms5864 KiB
34Elfogadva32ms5848 KiB
35Elfogadva28ms6060 KiB
36Hibás válasz32ms6404 KiB
37Elfogadva30ms6488 KiB
38Elfogadva41ms7136 KiB
39Elfogadva48ms7852 KiB