給定倆個整數n和m,n能拆分成m個數的和,對於任何乙個數字組合不能同時滿足以下兩個條件:
任取乙個數字
1、該數的前乙個數比它大
2、該數的後乙個數比它大
問題是求出在這樣的條件下拆分n的最大組合數。
例如:輸入5 3
輸出5示例解釋:
error不滿足
解決思路:深搜+剪枝,複雜度o((n-m)^m),暫時沒想到更快的解法
public
class
main
for(
int i =
1; i <= differ; i++)if
(pos >1&&
(numberpos[pos]
> numberpos[pos -1]
&& numberpos[pos -1]
< numberpos[pos -2]
))dfs(numberpos, pos +1)
;if(allocated == n && pos == numberpos.length -1)
allocated -= i;
numberpos[pos]-=1
;}}public
static
void
main
(string[
] args)
}
華為2020筆試
輸入n個字元,求他們有多少種排列 abc 6種 abc acb.aab 3種 n 8 數列範圍較小,所以直接全排列,暴力判重,就是不知道為啥乙個點一直沒過。判斷讀入為空的原因?include includeusing namespace std int g 100000 10 int a 10 in...
刷題 阿里20200330筆試
目錄 第1題第2題 總結 小強有n個養雞場,第i個養雞場初始有a i 只小雞。與其他養雞場不同的是,他的養雞場每天增加k只小雞,小強每天結束都會在數量最多的養雞場裡賣掉一半的小雞,假如乙個養雞場有x隻雞,則賣出後只剩下x 2 向下取整 隻雞。問m天後小強的n個養雞場一共多少只小雞?最後幾分鐘a了,很...
網易2020筆試真題 序列交換
題目描述 小易給你乙個包含n個數字的陣列a1,a2,an。你可以對這個陣列執行任意以下交換操作 對於陣列中的兩個下標i,j 1 i,j n 如果ai aj為奇數,就可以交換ai和aj 現在允許你使用操作次數不限,小易希望你能求出在所有通過若干次操作可以得到的陣列中,字典序最小的乙個是什麼 輸入描述 ...