一維座標的移動

2021-09-27 19:04:31 字數 675 閱讀 6237

在乙個長度為 nn 的座標軸上,蒜頭君想從 aa 點 移動到 bb 點。他的移動規則如下:

向前一步,座標增加 1。

向後一步,座標減少 1。

跳躍一步,使得座標乘 2。

蒜頭君不能移動到座標小於 0 或大於 n 的位置。蒜頭想知道從 aa 點移動到 bb 點的最少步數是多少,你能幫他計算出來麼?

輸入格式

第一行輸入三個整數 n,a,b,分別代表座標軸長度,起始點座標,終點座標。(0≤a,b≤n≤5000)

輸出格式

輸出乙個整數佔一行,代表蒜頭要走的最少步數。

樣例輸入複製102

7樣例輸出複製

3

#include

int n, a, b, a[

5001];

void

bfs(

int i)

if(i -

1>=

0&& i -

1<= n)

if(a[i -1]

> a[i]+1

)if(2

* i <= n &&

2* i >=0)

if(a[

2* i]

> a[i]+1

)}intmain()

一維座標的移動

在乙個長度為 n的座標軸上,蒜頭君想從 a 點 移動到 b 點。他的移動規則如下 向前一步,座標增加 1。向後一步,座標減少 1 跳躍一步,使得座標乘 2 蒜頭君不能移動到座標小於 0 或大於 n 的位置。蒜頭想知道從 a 點移動到 b 點的最少步數是多少,你能幫他計算出來麼?輸入格式 第一行輸入三...

一維座標的移動

在乙個長度為 n 的座標軸上,蒜頭君想從 a 點 移動到 b 點。他的移動規則如下 向前一步,座標增加 1。向後一步,座標減少 1。跳躍一步,使得座標乘 2。蒜頭君不能移動到座標小於 0 或大於 n 的位置。蒜頭想知道從 a 點移動到 b 點的最少步數是多少,你能幫他計算出來麼?第一行輸入三個整數 ...

計蒜客一維座標的移動

在乙個長度為 nn 的座標軸上,蒜頭君想從 aa 點 移動到 bb 點。他的移動規則如下 向前一步,座標增加 11。向後一步,座標減少 11。跳躍一步,使得座標乘 22。蒜頭君不能移動到座標小於 00 或大於 nn 的位置。蒜頭想知道從 aa 點移動到 bb 點的最少步數是多少,你能幫他計算出來麼?...