面試題 擷取最長的K塊木材

2021-10-09 10:23:53 字數 1074 閱讀 3302

【題目】

給定陣列,每個元素代表乙個木頭的長度,木頭可以任意截斷,從這堆木頭中截出至少k個相同長度為m的木塊,已知k,求max(m)

public

class

main1

;int k =7;

arrays.

sort

(a);

int m = a[a.length-1]

;for

(int i=

0;i)else

} system.out.

println

(m);

//114

}}

public

class

main

;int k =7;

system.out.

println

(max_m

(l,k));

//114

}//思路:找最大長度m,可能從某個數開始遞減。最大長度max(m)<=陣列中每個數除k之和。

//如:232/7 + 124/7 + 456/7 = 115, 但是從115開始遞減是不夠的,應該從最大值開始遍歷。

//即:從math.max(sum,陣列元素最大值)開始遞減

public

static

intmax_m

(int

l,int k)

int[

] j =

newint

[l.length]

;for

(i =

0; i < l.length; i++

)for

(i =

0; i < l.length -

1; i++)}

max0 = math.

max(sum, l[0]

);for(max = max0; max >=

1; max--)if

(sum >= k)

}return max;

}}

擷取帶HTML標籤的文字 面試題

如果我想從內容中取100個字元出來 注 內容中有html 因為想保留基本的p div img font b i 如何取?取得時候應該考慮哪些問題?快活林顧心懌得分可 倒薩飛機佛擋殺佛1阿飛 2 粉底阿飛第三發嗲發iedfias發的死阿飛第四阿夫頓大佛寺 阿飛大夫額3脎放大發得啊 范德薩范德薩 分大福...

面試題30 最小的k個數

題目 輸入n個整數,找出其中最小的k個數。例如輸入4,5,1,6,2,7,3,8這8個數字,則最小的4個數字是1,2,3,4.思路1,同29題一樣,利用快排思想,醉倒第k大的數,它左邊都比它小即可。o n 2,適合海量資料,利用堆資料結果,取數o 1 刪除和插入需要o k 總共n個數,時間複雜度o ...

面試題30 最小的k個數

輸入n個整數,找出其中最小的k個數。例如輸入4,5,1,6,2,7,3,8這8個數字,則最小的4個數字是1,2,3,4。思路1 按遞增排序,然後輸出前k個數,簡單粗暴,時間複雜度o nlogn 思路2 利用partition演算法,找到第k大數,輸出其左邊k個數,時間複雜度o n 思路3 開乙個規模...