104512024-04-02 20:40:25111Modern Artcpp17Hibás válasz 5/1008ms5980 KiB
#include<bits/stdc++.h>
using namespace std;

#define int long long

signed main(){
	ios::sync_with_stdio(false);
	cin.tie(nullptr);
	int N;
	cin>>N;
	vector<pair<int,int>>v(N);
	for(int i=0;i<N;i++){
		cin>>v[i].second;
	}
	for(int i=0;i<N;i++){
		cin>>v[i].first;
	}
	sort(v.rbegin(),v.rend());
	int ans=0;
	set<pair<int,int>>c;
	for(auto[r,x]:v){
		int s=x-r,e=x+r;
		auto t=c.lower_bound({x-r,INT_MIN});
		if(t!=c.end()){
			e=min(e,t->first);
		}
		if(t!=c.begin()){
			s=max(s,prev(t)->second);
		}
		if(e>s){
			ans+=(e-s)*r*2;
			c.emplace(s,e);
		}
	}
	cout<<ans<<'\n';
	return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva3ms1696 KiB
2Elfogadva3ms1932 KiB
subtask25/5
3Elfogadva4ms2384 KiB
4Elfogadva4ms2436 KiB
5Elfogadva7ms3308 KiB
6Elfogadva8ms3932 KiB
7Elfogadva8ms4324 KiB
8Elfogadva8ms4020 KiB
9Elfogadva7ms3912 KiB
10Elfogadva3ms3076 KiB
subtask30/15
11Elfogadva2ms3012 KiB
12Elfogadva3ms3228 KiB
13Elfogadva2ms3220 KiB
14Hibás válasz2ms3216 KiB
15Elfogadva2ms3224 KiB
16Hibás válasz2ms3320 KiB
17Elfogadva2ms3316 KiB
18Elfogadva3ms3452 KiB
19Hibás válasz3ms3588 KiB
subtask40/30
20Hibás válasz3ms3616 KiB
21Hibás válasz3ms3772 KiB
22Elfogadva3ms3792 KiB
23Hibás válasz3ms3740 KiB
24Hibás válasz3ms3848 KiB
25Elfogadva3ms4176 KiB
26Elfogadva3ms4084 KiB
27Elfogadva3ms4124 KiB
28Hibás válasz3ms4144 KiB
subtask50/50
29Elfogadva3ms4200 KiB
30Hibás válasz3ms4340 KiB
31Hibás válasz4ms4384 KiB
32Hibás válasz4ms4376 KiB
33Hibás válasz4ms4384 KiB
34Elfogadva4ms4332 KiB
35Hibás válasz7ms4748 KiB
36Hibás válasz4ms4476 KiB
37Hibás válasz7ms4480 KiB
38Hibás válasz7ms4492 KiB
39Elfogadva3ms4304 KiB
40Elfogadva8ms5772 KiB
41Elfogadva8ms5980 KiB
42Hibás válasz6ms4732 KiB
43Hibás válasz6ms4500 KiB
44Hibás válasz8ms4988 KiB
45Hibás válasz8ms5368 KiB