101702024-03-28 23:06:18111Házszámokcpp17Hibás válasz 25/1003ms5428 KiB
#include <bits/stdc++.h>
using namespace std;

#define int long long

signed main(){
	ios::sync_with_stdio(false);
	cin.tie(nullptr);
	int K;
	cin>>K;
	vector<int>v(K);
	for(int i=0;i<K;i++){
		cin>>v[i];
	}
	v[0]++;
	auto calc=[&](int n,int i)->int{
		int x=0;
		if(i>0){
			for(int p=1;p<=n;p*=K){
				x+=n/(p*K)*p;
				x+=min(max(n%(p*K)-p*i,0ll),p);
			}
		}
		else{
			for(int p=1;p<=n;p*=K){
				x+=max((n/(p*K)-1)*p,0ll);
				if(n>=p*K){
					x+=min(max(n%(p*K)-p*i,0ll),p);
				}
			}
		}
		return x;
	};
	int l=1,h=1e17;
	while(l<h){
		int m=(l+h)/2;
		int ok=1;
		for(int i=0;i<K;i++){
			ok&=calc(m+1,i)<=v[i];
		}
		if(ok){
			l=m+1;
		}
		else{
			h=m;
		}
	}
	cout<<h-1<<'\n';
	return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva3ms1832 KiB
2Elfogadva3ms2168 KiB
3Elfogadva3ms2436 KiB
subtask20/25
4Elfogadva3ms2208 KiB
5Elfogadva3ms2352 KiB
6Elfogadva3ms2560 KiB
7Hibás válasz3ms2772 KiB
8Elfogadva3ms2856 KiB
9Elfogadva3ms2852 KiB
10Elfogadva3ms3140 KiB
11Elfogadva3ms3200 KiB
12Elfogadva3ms3340 KiB
13Elfogadva3ms3440 KiB
14Elfogadva3ms3436 KiB
15Hibás válasz3ms3500 KiB
16Elfogadva3ms3712 KiB
17Elfogadva3ms3912 KiB
18Elfogadva3ms3916 KiB
19Hibás válasz3ms3896 KiB
subtask310/10
20Elfogadva3ms3904 KiB
21Elfogadva3ms4000 KiB
22Elfogadva3ms3992 KiB
23Elfogadva3ms3992 KiB
24Elfogadva3ms4092 KiB
subtask415/15
25Elfogadva3ms4128 KiB
26Elfogadva3ms4216 KiB
27Elfogadva3ms4208 KiB
28Elfogadva3ms4212 KiB
29Elfogadva3ms4340 KiB
30Elfogadva3ms4424 KiB
31Elfogadva3ms4428 KiB
32Elfogadva3ms4520 KiB
33Elfogadva3ms4432 KiB
subtask50/20
34Elfogadva3ms4652 KiB
35Elfogadva3ms4636 KiB
36Hibás válasz3ms4768 KiB
37Hibás válasz3ms4852 KiB
38Elfogadva3ms4856 KiB
39Elfogadva3ms4856 KiB
40Elfogadva3ms4860 KiB
41Elfogadva3ms4856 KiB
42Elfogadva3ms4980 KiB
subtask60/30
43Elfogadva3ms5068 KiB
44Elfogadva3ms5200 KiB
45Elfogadva3ms5276 KiB
46Elfogadva3ms5428 KiB
47Elfogadva3ms5292 KiB
48Hibás válasz3ms5392 KiB
49Elfogadva3ms5284 KiB
50Elfogadva3ms5176 KiB
51Elfogadva3ms5332 KiB
52Hibás válasz3ms5292 KiB
53Elfogadva3ms5176 KiB
54Elfogadva3ms5184 KiB
55Elfogadva3ms5192 KiB
56Elfogadva3ms5184 KiB
57Elfogadva3ms5192 KiB
58Elfogadva3ms5188 KiB
59Elfogadva3ms5188 KiB
60Hibás válasz3ms5292 KiB