Submission #402422

#TimeUsernameProblemLanguageResultExecution timeMemory
402422fadi57Exhibition (JOI19_ho_t2)C++14
50 / 100
184 ms9616 KiB
#include<bits/stdc++.h>
using namespace std;
const int mx=1002;
typedef long long ll;
int inf=1e9+10;
const int mod=1e9+7;
int n,m;
vector<pair<int,int>>v;
vector<int>f;
int dp[mx][mx];

int solve(int i,int j){

if(i==n){
    return 0;
}
int &ret=dp[i][j];
if(ret!=-1){return ret;}
auto it=lower_bound(f.begin()+j,f.end(),v[i].second)-f.begin();



    ret=solve(i+1,j);

if(it!=f.size()){
    ret=max(ret,solve(i+1,it+1)+1);
}
return ret;

 }
int main(){


  /*  f.push_back(5);  f.push_back(8);
    auto it=lower_bound(f.begin(),f.end(),9)-f.begin();
    cout<<it;
    */
    memset(dp,-1,sizeof(dp));
cin>>n>>m;
int s[n];
int vv[n];
for(int i=0;i<n;i++){
    cin>>s[i]>>vv[i];

    v.push_back({vv[i],s[i]});
  }
  sort(v.begin(),v.end());

  for(int i=0;i<m;i++){
    int x;cin>>x;
    f.push_back(x);
  }
  sort(f.begin(),f.end());

 cout<< solve(0,0);
 }

Compilation message (stderr)

joi2019_ho_t2.cpp: In function 'int solve(int, int)':
joi2019_ho_t2.cpp:25:6: warning: comparison of integer expressions of different signedness: 'long int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   25 | if(it!=f.size()){
      |    ~~^~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...