劉小白第乙個博文 演算法分析(翻煎餅)

2021-10-04 09:26:31 字數 910 閱讀 8642

輸入包括兩行,第一行是乙個整數n(1<=n<=1000),表示煎餅的個數,接下來的一行有n個不相同的整數,整數間用空格隔開,每個整數表示煎餅的大小(直徑),左邊表示頂部,右邊表示底部。

輸出為一行,翻煎餅的最少次數

55 4 2 3 1

樣例輸出

4

#include

#include

#include

using

namespace std;

//查詢該值的位置

intfind

(int

*arr,

int length,

int num)

return-1

;}//翻轉後的次序交換

void

swap

(int

*arr,

int start ,

int end)

}int

main()

sort

(arr_sort.

begin()

,arr_sort.

end())

;//從大到小排序

int count =0;

for(

int i=n-

1; i>=

0; i--

)else}}

cout

}

第一次找到最大的煎餅翻轉到最後乙個,查詢陣列範圍縮小乙個,重複,直到排序成功。

翻轉過程分為三種情況:

1.查詢的index_max在第乙個位置,則翻轉一次即可;

2.查詢的index_max在中間位置,則需要2次翻轉(有1次翻轉使index_max在第乙個位置)

3.查詢的index_max在縮小範圍的最後乙個位置,則無需翻轉。

我的第乙個博文

本markdown編輯器使用stackedit修改而來,用它寫部落格,將會帶來全新的體驗哦 markdown 是一種輕量級標記語言,它允許人們使用易讀易寫的純文字格式編寫文件,然後轉換成格式豐富的html頁面。維基百科 使用簡單的符號標識不同的標題,將某些文字標記為粗體或者斜體,建立乙個鏈結等,詳細...

新手小白的第乙個shell指令碼

獲取cpu 記憶體基本資訊匯入到資料庫指令碼 第一次寫,希望大家給指點一下 bin bash 使用前請先變更password變數裡的密碼 hostname localhost 資料庫資訊 port 3306 username root password qianfeng 123 免密登陸資料庫 ec...

kmeans 第乙個matlab演算法

k均值演算法 km 32 最終聚類的大小 影象的大小 rgbsize size immatrix 陣列下標從1開始 imshow immatrix 顯示 immatrix 1,1,1 end for i 1 1 rgbsize 1 for j 1 1 rgbsize 2 immatrix i,j,1...