GP28432. 校准刻度
题目描述
题目描述
一台校准仪有内、外两圈刻度。每圈都被等分为 个位置,按顺时针方向编号为 。
内圈可以转动,上面有 条刻痕。第 条内圈刻痕初始位于位置 ,符号为 ,清晰度为 。外圈固定不动,上面有 条参考刻痕。第 条外圈刻痕位于位置 ,符号为 ,清晰度为 。同一圈内的刻痕位置两两不同。
将内圈顺时针转动 格后,第 条内圈刻痕位于
如果一条内圈刻痕与一条外圈刻痕位于同一位置,并且它们的符号相同,就形成一次有效重合,其贡献为两条刻痕清晰度的较小值。一次转动的校准得分是所有有效重合的贡献之和。
若一次转动产生了至少一次有效重合,则称它是合法校准。保证至少存在一种合法校准。
你需要在所有 的合法校准中,找到得分最大的转动格数 。若有多个 的得分相同,选择其中最小的 。
输入格式
从文件 calibrate.in 中读取数据。
第一行包含四个整数 ,分别表示每圈的位置数、内圈刻痕数、外圈刻痕数和符号种数。
接下来 行,第 行包含三个整数 ,描述一条内圈刻痕。
接下来 行,第 行包含三个整数 ,描述一条外圈刻痕。
输出格式
输出到文件 calibrate.out 中。
输出两个整数 和 ,分别表示按题目规则选出的转动格数和对应的最大校准得分。由于规定了得分相同时选择最小的 ,这两个整数唯一确定。
样例
12 3 4 2
1 1 5
5 2 7
9 1 4
3 1 6
7 2 3
11 1 8
4 2 10
2 12
样例解释
样例 #1 中,将内圈顺时针转动 格后,三条内圈刻痕分别到达位置 。它们均与相同符号的外圈刻痕重合,贡献依次为 ,总得分为 。不存在得分更高的合法校准。
数据规模与约定
对于所有数据,保证:
- ;
- ,且 ;
- ;
- ;
- ;
- ;
- 两两不同, 两两不同;
- 至少存在一对下标 满足 ;
- 最大校准得分不超过 。
本题采用子任务捆绑计分。只有通过某个子任务内的所有测试点,才能获得该子任务的分数。各子任务独立计分。
各子任务的分值和额外约束如下。子任务 的额外约束蕴含子任务 的额外约束,子任务 的额外约束蕴含子任务 的额外约束。
| 子任务 | 分值 | 额外约束 |
|---|---|---|
| 1 | 20 | |
| 2 | 30 | |
| 3 | 50 | 无特殊限制 |