#S6U11P03. 【例题】计数器的两种按钮

【例题】计数器的两种按钮

计数器的两种按钮

难度:T2

【知识点:广度优先搜索、等代价状态转移】

前置知识:数组、循环、队列、首次发现时标记距离。

题目描述

计数器初始显示 A,目标是 B。一次按键可以把当前数字 x 变为 x+1,或者变为 2x。屏幕只允许显示 0 到 M(包含端点),会超过 M 的按键不能使用。求最少按键次数;无法到达输出 -1。A=B 时为 0。两种按键产生相同数字时,也只是同一个状态。

输入格式

一行 M A B。

输出格式

一行一个整数,表示最少次数或 -1。

样例输入

10 1 4

样例输出

2

样例解释

1→2→4,只需2次;两次得到2的方式不需要重复展开。

数据范围

1≤M≤10000,0≤A,B≤M。