Submission #1185056

#TimeUsernameProblemLanguageResultExecution timeMemory
1185056inesfiExhibition (JOI19_ho_t2)C++20
50 / 100
24 ms8516 KiB
#include<bits/stdc++.h> using namespace std; #define endl "\n" #define int long long const int TAILLEMAXI=1002; int dejavu[TAILLEMAXI][TAILLEMAXI]; /////////tab,cadre int nbtableaux,nbcadres; vector<pair<int,int>> tableaux; vector<int> cadres; int dp(int tabec,int cadreec){ if (cadreec>=nbcadres or tabec>=nbtableaux){ return 0; } if (dejavu[tabec][cadreec]!=-1){ return dejavu[tabec][cadreec]; } int val=max(dp(tabec+1,cadreec),dp(tabec,cadreec+1)); if (tableaux[tabec].second<=cadres[cadreec]){ val=max(val,dp(tabec+1,cadreec+1)+1); } dejavu[tabec][cadreec]=val; return val; } signed main(){ ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0); cin>>nbtableaux>>nbcadres; for (int i=0;i<nbtableaux;i++){ for (int j=0;j<nbcadres;j++){ dejavu[i][j]=-1; } } for (int i=0;i<nbtableaux;i++){ int s,v; cin>>s>>v; tableaux.push_back({v,s}); } sort(tableaux.begin(),tableaux.end()); for (int i=0;i<nbcadres;i++){ int v; cin>>v; cadres.push_back(v); } sort(cadres.begin(),cadres.end()); cout<<dp(0,0)<<endl; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...