Submission #1156386

#TimeUsernameProblemLanguageResultExecution timeMemory
1156386fatman87878Let's Win the Election (JOI22_ho_t3)C++20
10 / 100
513 ms472 KiB
#include<bits/stdc++.h> using namespace std; #define IOS cin.tie(nullptr)->sync_with_stdio(0),cin.exceptions(cin.failbit); #define lb(x) (x)&-(x) #define all(x) (x).begin(),(x).end() #define ll long long #define db long double constexpr int maxN=5e2+5; int n,k; db dp[maxN]; pair<db,db> val[maxN]; inline db DP(int G){ fill(dp+1,dp+k+1,1e18); for(int i = 1;i<=n;i++)for(int j = k;j;j--) dp[j] = min(dp[j],dp[j-1]+(j<=G?(val[i].first/j):(val[i].second/(G+1)))); return dp[k]; } int main(){ IOS cin>>n>>k; for(int i = 1;i<=n;i++){ cin>>val[i].second>>val[i].first; if(val[i].first==-1)val[i].first = 1e13; } sort(val+1,val+n+1); db ans = 1e18; for(int i = 0;i<=k;i++)ans = min(ans,DP(i)); cout<<fixed<<setprecision(15)<<ans<<'\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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...