*程式是計算陣列直方圖最大矩形面積,直方圖每列寬度為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.不能無限制地呼叫本身,須有個出口...