<分区>
我需要编写一个函数(在 C++ 中)获取两个整数 (>0) (n1,n2)。 我只能做两件事:
- 将 1 加到 n1。
- 将 n1 乘以 2。
函数返回从n1到n2的最短路径的步数。 你能告诉我怎么做吗?
谢谢!
附言 如果不可能,函数返回 -1。
这里是我尝试过的:
if (n1<n2)
{
n1++;
if ((n1)*2<=n2)
return 2+f(n1*2,n2);
else
return 1+f(n1,n2);
}