QOJ.ac

QOJ

Limite de temps : 1 s Limite de mémoire : 2048 MB Points totaux : 100

#14520. 展览

Statistiques

你是某著名艺术展览的策展人。你有 $N$ 幅画作,每幅画作有两个属性:画作尺寸 $A_i$ 和艺术价值 $B_i$。你还有 $M$ 个可用的画框,每个画框的尺寸为 $S_j$。

你想选择并安排 $k$ 幅画作 $i_1, i_2, \dots, i_k$ 以及画框 $j_1, j_2, \dots, j_k$ 进行展出,使得:

  • 每幅被选中的画作 $i_t$ 都放入画框 $j_t$ 中,且画作尺寸不超过画框尺寸:$A_{i_t} \le S_{j_t}$
  • 在展出顺序中,被选中画作的尺寸是非降的:$A_{i_1} \le A_{i_2} \le \dots \le A_{i_k}$
  • 在展出顺序中,被选中画作的艺术价值是非降的:$B_{i_1} \le B_{i_2} \le \dots \le B_{i_k}$

求存在合法安排的 $k$ 的最大值。

实现细节

你需要实现以下函数:

int32 max_paintings(int32 N, int32 M, int32[] A, int32[] B, int32[] S)
  • $N$:画作的数量
  • $M$:画框的数量
  • $A$:长度为 $N$ 的数组,其中 $A[i]$ 是画作 $i$ 的尺寸
  • $B$:长度为 $N$ 的数组,其中 $B[i]$ 是画作 $i$ 的艺术价值
  • $S$:长度为 $M$ 的数组,其中 $S[j]$ 是画框 $j$ 的尺寸
  • 该函数应返回可以展出的最大画作数量。

数据范围

  • $1 \le N, M \le 10^5$
  • $1 \le A_i, B_i, S_j \le 10^9$ 对于所有合法的下标

子任务

  • 子任务 1(10 分):$N, M \le 10$
  • 子任务 2(20 分):所有画框尺寸都大于所有画作尺寸(对于所有 $i, j$,有 $S_j > A_i$)
  • 子任务 3(20 分):所有艺术价值都相等(对于所有 $i, j$,有 $B_i = B_j$)
  • 子任务 4(20 分):$N, M \le 2000$
  • 子任务 5(30 分):无附加限制

样例

输入格式 1

3 3
1 2 3
1 2 4
2 3 5

输出格式 1

3

说明

  • 我们有 3 幅画作,尺寸为 $[1, 2, 3]$,艺术价值为 $[1, 2, 4]$。
  • 我们有 3 个画框,尺寸为 $[2, 3, 5]$。
  • 我们可以选择全部 3 幅画作:画作 1(尺寸 1,价值 1)放入画框 1(尺寸 2),画作 2(尺寸 2,价值 2)放入画框 2(尺寸 3),画作 3(尺寸 3,价值 4)放入画框 3(尺寸 5)。
  • 尺寸是非降的:$1 \le 2 \le 3$,且艺术价值也是非降的:$1 \le 2 \le 4$。

输入格式 2

4 3
1 3 2 4
3 2 3 5
3 6 4

输出格式 2

3

说明

  • 我们有 4 幅画作,尺寸为 $[1, 3, 2, 4]$,艺术价值为 $[3, 2, 3, 5]$。
  • 我们有 3 个画框,尺寸为 $[3, 6, 4]$。
  • 我们可以选择下标为 1、3 和 4 的画作:画作 1(尺寸 1,价值 3)放入画框 1(尺寸 3),画作 3(尺寸 2,价值 3)放入画框 3(尺寸 4),画作 4(尺寸 4,价值 5)放入画框 2(尺寸 6)。
  • 尺寸是非降的:$1 \le 2 \le 4$,且艺术价值也是非降的:$3 \le 3 \le 5$。

输入格式 3

4 3
1 3 2 4
3 2 3 5
1 1 4

输出格式 3

2

说明

  • 我们有 4 幅画作,尺寸为 $[1, 3, 2, 4]$,艺术价值为 $[3, 2, 3, 5]$。
  • 我们有 3 个画框,尺寸为 $[1, 1, 4]$。
  • 我们可以选择画作 1(尺寸 1,价值 3)放入画框 1 或 2(尺寸 1),以及画作 4(尺寸 4,价值 5)放入画框 3(尺寸 4)。
  • 尺寸是非降的:$1 \le 4$,且艺术价值也是非降的:$3 \le 5$。

评测程序示例

评测程序示例按以下格式读取输入:

  • 第 1 行:两个整数 $N$ 和 $M$
  • 第 2 行:$N$ 个整数 $A_1, A_2, \dots, A_N$(画作尺寸)
  • 第 3 行:$N$ 个整数 $B_1, B_2, \dots, B_N$(艺术价值)
  • 第 4 行:$M$ 个整数 $S_1, S_2, \dots, S_M$(画框尺寸)

评测程序示例调用 max_paintings(N, M, A, B, S) 并输出返回值。

说明

注意:本题提供的评测程序示例仅用于在本地测试你的解决方案。比赛中实际使用的评测程序可能会有所不同。

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.