Sicily課程作業 1934 移動小球

2022-05-13 20:53:54 字數 1061 閱讀 5550

description

你有一些小球,從左到右依次編號為1,2,3,...,n. 你可以執行兩種指令(1或者2)。其中, 1 x y表示把小球x移動到小球y的左邊, 2 x y表示把小球x移動到小球y右邊。 指令保證合法,即x不等於y。 例如,初始狀態1,2,3,4,5,6的小球執行1 1 4後,小球1被移動到小球4的左邊,即2,3,1,4,5,6。如果再執行2 3 5,結點3將會移到5的右邊,即2,1,4,5,3,6。 

第一行為乙個整數t(0為每個測試用例單獨輸出一行,從左到右輸出最後序列,每個數字後面跟乙個空格。 

2 

6 2

1 1 4

2 3 5

5 1

2 1 5

2 1 4 5 3 6  

2 3 4 5 1

#include #include 

#include

using

namespace

std;

class

ball;

ball array[

500001];//

大陣列不能放在main()內

void moveball(int order,int first,int second,ball array)

else

}int

main()

while(commandnum--)

else

if(order == 1 && second == head)

else

moveball(order,first,second,array);

}//所有order執行完畢之後輸出

for(i = 0;i < numofball-1;i++)

cout

<< head <}

system(

"pause");

return0;;

}

Sicily1934 移動小球

時間限制 1 秒,記憶體限制 32 兆 你有一些小球,從左到右依次編號為1,2,3,n.你可以執行兩種指令 1或者2 其中,1 x y表示把小球x移動到小球y的左邊,2 x y表示把小球x移動到小球y右邊。指令保證合法,即x不等於y。例如,初始狀態1,2,3,4,5,6的小球執行1 1 4後,小球1...

課程作業五

上次作業我已經將我的乙個類分為了四個類,而且已經進行了 的實現。git傳送門 在四則運算器的計算算式的值的編寫中,我用到了棧。下面是我所學到的一些知識。棧是一種特殊的線性表,只能從固定的方向進出,而且棧進出的基本原則是 先進棧的元素後出棧。它按照先進後出的原則儲存資料,先進入的資料被壓入棧底,最後的...

課程作業一

github鏈結 這次作業我選擇了重構 因為我上幾次作業使用了類似於出題模板的 導致我的程式隨機性不夠,於是我下定決心寫乙份符合我自己的要求的 期間遇見了許許多多的問題,例如計算生成算式值的時候,自己也想了了乙個思路 用string型變數來儲存算式,然後去尋找第乙個 然後計算它與前乙個 之間算式的值...