一些遇到的有趣的程式題

2021-07-05 06:16:17 字數 679 閱讀 8898

*程式是計算陣列直方圖最大矩形面積,直方圖每列寬度為1,如的最大矩形面積是7*2=14;

*思路:從左往右,從a[0]到a[n-1],依次計算能和a[i]組成矩形的最大面積,因為只有大於或者等於a[i]才能和a[i]組成矩形塊

*所以分別從a[i]開始,從左擴充套件計算能和a[i]組成的矩形的塊數,再往右計算能和a[i]組成的矩形的塊數,把它們相加,乘以a[i],

*就是能和a[i]組成矩形的最大面積;

*/public

class

get_max_rect ;

system.out.println(max(a,a.length));

}private

static

intmax(int a, int len) else

}system.out.println(count);

j=i+1;

while(j<=len-1)else

}system.out.println(count);

if(mxreturn mx;}}

一些有趣的演算法題

老崔去某廠筆試時,遇到了經典的 狼 羊 白菜 過河問題 由於經常看演算法方面的內容,這道對於他來說,so easy。題目大概是這樣 題號1 農夫需要把狼 羊 菜和自己運到河對岸去,只有農夫能夠划船,而且船比較小,除農夫之外每次只能運一種東西,還有乙個棘手問題,就是如果沒有農夫看著,羊會偷吃菜,狼會吃...

algorithm 一些有趣的思維題

hdu 1108 include iostream using namespace std intmain return0 乙個數的任何次方一共只有四種情況,分別列出這四種情況後取餘冪就可以知道尾數是多少。codeforces 1217a include iostream include algor...

遞迴和一些有趣的演算法題

遞迴指的是在方法內部對方法自身呼叫 遞迴一般用於一些常見的演算法的解決,在實際應用中,比如對資料夾內部檔案的遞迴檢索 以及樹形選單的顯示 遞迴是對迴圈的一種補充 遞迴,就是在執行的過程中呼叫自己。構成遞迴需具備的條件 1.子問題須與原始問題為同樣的事,且更為簡單 2.不能無限制地呼叫本身,須有個出口...