這類問題與迷宮問題的走法有些類似,即經過多少步是否可以從起點到終點的問題。
**如下:
#include using namespace std;
int main()else if((sum-s)%2==0)else
return 0;
}
分析:
首先,將終點的x,y值 平鋪在 一維的數軸上。(因為每次移動為1個長度,平鋪只會丟失方向資訊,但是不會丟失長度資訊)
在一維上後,二者的長度和(記為sum)與 步數之差的2的餘數必須為0的原因:在當前的一維陣列上,不同的兩個線段總可以經過偶數個(-1+1=0)進行調和。 所以,使得條件滿足。
sum>s為no的原因在於,sum在此時為絕對長度,s小於絕對長度後,不可能找到合適的(-1+1=0)進行調和。
注意,這種方法實際上就省去了很多具體情況的考慮,而是以總體進行考慮。
賽馬網基本演算法之 約會問題
題目描述 bob和alice有個約會,一大早bob就從點 0,0 出發,前往約會地點 a,b bob沒有一點方向感,因此他每次都隨機的向上下左右四個方向走一步。簡而言之,如果bob當前在 x,y 那麼下一步他有可能到達 x 1,y x 1,y x,y 1 x,y 1 很顯然,當他到達目的地的時候,已...
基本演算法練習五
這道題看上去還是蠻簡單的,我想到的就是字串替換。由於它說了字串不超過1000,那麼我在程式裡就直接建乙個char陣列,這樣的話能夠很方便的修改對應的元素。如果是用字串指標的話,字串是存在常量區在。沒有陣列之間修改方便。如下 這道題也是基本的迴圈判斷,就是需要設定乙個p個籃筐陣列,用來儲存裡面是不是有...
賽碼 (基本演算法 難度1)約會 Python
bob和alice有個約會,一大早bob就從點 0,0 出發,前往約會地點 a,b bob沒有一點方向感,因此他每次都隨機的向上下左右四個方向走一步。簡而言之,如果bob當前在 x,y 那麼下一步他有可能到達 x 1,y x 1,y x,y 1 x,y 1 很顯然,當他到達目的地的時候,已經很晚了,...