题目名称 2887. [模板]查找≤x的最大数
输入输出 leqx.in/out
难度等级
时间限制 1000 ms (1 s)
内存限制 512 MiB
测试数据 10
题目来源 Gravatarsyzhaoss 于2026-01-24加入
开放分组 全部用户
提交状态
分类标签
分享题解
通过:1, 提交:1, 通过率:100%
Gravatarychyyx 100 1.669 s 5.24 MiB C++
关于 查找≤x的最大数 的近10条评论(全部评论)

2887. [模板]查找≤x的最大数

★   输入文件:leqx.in   输出文件:leqx.out   简单对比
时间限制:1 s   内存限制:512 MiB

【题目描述】

给出由$n$个从小到大排好序的整数序列,它们的下标为$1\sim n$,给定一个整数$x$,请你查找$\leq x$的最大的一个数的位置。

【输入格式】

第一行有两个整数$n$和$m$,表示序列由$n$个数组成,待查找的数有$m$个;

第二行有$n$个整数,从小到大排好序;

接下来有$m$行,每行一个整数,表示待查找元素$x$。

【输出格式】

输出有$m$行,即对于每一个待查找元素$x$,查找$\leq x$的最大的一个数的位置。

如果存在与$x$相等的数,则输出与$x$相等的数的最大下标;如果不存在与$x$相等的数,则输出$<x$的最大的数的下标。

输入保证一定有答案。

【样例输入】

5 2
3 5 6 6 8
6
4

【样例输出】

4
1

【提示】

对于50%的数据,有$1\leq n\leq 10^4,1\leq m\leq 100$;

对于100%的数据,有$1\leq n\leq 10^6,1\leq m\leq 10^5$。