Submission #941244

#TimeUsernameProblemLanguageResultExecution timeMemory
941244dsyzAdvertisement 2 (JOI23_ho_t2)C++17
33 / 100
250 ms38704 KiB
#include <bits/stdc++.h> using namespace std; using ll = long long; #define MAXN (1000005) int main() { ios_base::sync_with_stdio(false);cin.tie(0); ll N; cin>>N; pair<ll,ll> arr[N]; for(ll i = 0;i < N;i++){ cin>>arr[i].first>>arr[i].second; } if(N > 1000){ set<ll> s; for(ll i = 0;i < N;i++){ s.insert(arr[i].first); } cout<<s.size()<<'\n'; }else{ ll mini = 1e18; for(ll bitmask = 0;bitmask < (1ll<<N);bitmask++){ ll sum = 0; bool done[N]; memset(done,0,sizeof(done)); for(ll i = 0;i < N;i++){ if(bitmask & (1ll<<i)){ done[i] = 1; for(ll j = 0;j < N;j++){ if(abs(arr[i].first - arr[j].first) <= arr[i].second - arr[j].second){ done[j] = 1; } } sum++; } } bool ok = 1; for(ll i = 0;i < N;i++){ if(!done[i]){ ok = 0; } } if(ok){ mini = min(mini,sum); } } cout<<mini<<'\n'; } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...