#P14338. [JOI2020 预选赛 R2] 十键键盘 / Tenkey

    ID: 16108 远端评测题 2000ms 1024MiB 尝试: 0 已通过: 0 难度: 3 上传者: 标签>2020广度优先搜索 BFSJOI(日本)

[JOI2020 预选赛 R2] 十键键盘 / Tenkey

题目描述

JOI 君持有一个十键键盘。该键盘上印有从 0 0 9 9 的数字键,其布局如下图所示。请注意,印有数字 2 2 的键下方,以及印有数字 3 3 的键下方,均不存在按键。

:::align{center} :::

此外,该键盘上还设有一个光标,用于指向键盘上排列的某一个按键。光标初始时指向印有数字 0 0 的按键。

JOI 君每次操作可以选择执行以下任一动作:

  • 将光标移动至当前光标所指按键的上下左右相邻的按键上。但不可将光标移至不存在按键的位置。
  • 按下当前光标所指的按键,即输入该按键上印有的数字。若此前已输入过数字,则新输入的数字将紧跟在已输入数字的右侧。

现在,JOI 君希望使用该键盘输入一个正整数,使其除以 M M 的余数为 R R 。由于键盘操作需要耗时,他希望以尽可能少的操作次数完成输入。

给定 M M R R ,请编写程序,求出 JOI 君所需执行的最少操作次数。

输入格式

输入通过标准输入以如下格式给出:

M M R R

输出格式

输出一行,表示输入一个除以 M M 余数为 R R 的正整数所需的最少操作次数。

100000 13
5
4 3
3

提示

样例 1 解释

在此例中,通过以下 5 次操作可以输入数字 13 13

  • 将光标向上移动,此时光标指向数字 1 1 的按键。
  • 按下该键,输入数字 1 1
  • 将光标向右移动,此时光标指向数字 2 2 的按键。
  • 再次将光标向右移动,此时光标指向数字 3 3 的按键。
  • 按下该键,输入数字 3 3 ,此时已输入的数字序列为 13 13

由于无法通过 4 次或更少的操作输入满足条件的整数,因此输出 5 5

数据范围

  • 2M100000 2 \le M \le 100\,000
  • 1R<M 1 \le R < M
  • 所有输入值均为整数。

子任务

  1. (30 分)M=100000 M = 100\,000
  2. (70 分)无额外限制。

翻译由 Qwen3-235B 完成