网易19实习生面试

https://www.nowcoder.com/test/9763997/summary

牛牛找实习生

#include<iostream>
#include<cstring>
#include<algorithm>
#include<cstdio>
#include<set>
#include<map>
#include<bitset>
#include<time.h>
using namespace std;
#define ll long long
const int maxn=1e3+7;
const int mod=1e9+7;
const int inf=1e9+7;
int n,m;
int d,p,q;
int dp[maxn];
int main()
{
ios::sync_with_stdio(false);
cin.tie(0),cout.tie(0);
cin>>n>>m;
vector<pair<int,int>>ans;
for(int i=0;i<n;i++)
{
cin>>d>>p;
ans.emplace_back(d,p);
}
sort(ans.begin(),ans.end());
dp[0]=ans[0].second;
for(int i=1;i<n;i++)
{
dp[i]=max(dp[i-1],ans[i].second);
}
for(int i=0;i<m;i++)
{
cin>>q;
cout<<dp[upper_bound(ans.begin(),ans.end(),make_pair(q,inf))-ans.begin()-1]<<endl;
}
return 0;
}