題目的意思就是要將數字由小到大排序,但排序的方法稱為flip,比如{1,3,4,2}這些數字,如果flip(2) ('4'這個數字)的話,就要把'4'前面的數字做顛倒排序,變成{4,3,1,2},那再flip(1) ('2'這個數字)的話,就會變成{2,1,3,4},最後就是想辦法用最少步驟變成{1,2,3,4}
想法:
每次都將最大的數字移到最右邊,要移到最右邊,就先判斷
- 本來就在最右邊:不動,換下一個最大值
- 在最左邊:直接flip(1)將它換到最右
- 在中間:先flip(自己的位置)換到最左邊後,再flip(1)換到最右邊
沒有留言:
張貼留言