제출 #1164877

#제출 시각아이디문제언어결과실행 시간메모리
1164877LuvidiGym Badges (NOI22_gymbadges)C++20
15 / 100
2097 ms15944 KiB
#include <bits/stdc++.h> using namespace std; #define ll long long #define pll pair<ll, ll> #define pii pair<int, int> #define fs first #define sc second #define pb push_back void solve() { int n; cin>>n; pll a[n+1]; for(int i=1;i<=n;i++)cin>>a[i].sc; for(int i=1;i<=n;i++)cin>>a[i].fs; sort(a+1,a+n+1,[](pii p1,pii p2){return make_pair(p1.fs+p1.sc,p1.sc)<make_pair(p2.fs+p2.sc,p2.sc);}); pll dp[n+1]; dp[0]={0,0}; ll mx=0; for(int i=1;i<=n;i++){ auto[x,y]=a[i]; dp[i]={1,-y}; for(int j=0;j<i;j++)if(-dp[j].sc<=x){ dp[i]=max(dp[i],{dp[j].fs+1,dp[j].sc-y}); } mx=max(mx,dp[i].fs); } cout<<mx<<'\n'; } int main() { ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0); solve(); }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...