HDU DFS N個數中k個數成績的和

2021-08-18 11:28:17 字數 610 閱讀 1183

這篇主要參考了:

感覺dfs真正應用起來還是有點困難

描述:問題很簡單,給你ñ個正整數,求出這ñ個正整數中所有任選ķ個相乘後的和。

輸入:輸入有兩行,第一行是兩個整數ñ和k,其中1 <= k <= n <= 10。接下去一行就是ñ個正整數,保證最後結果用長即可儲存。

輸出:輸出只有乙個正整數,為最後的和。

示例輸入:

4 21 2 3 4

示例輸出:

35**:

//

// main.cpp

// dfs(n個數中k個數成績的和)

////由2018/4/9的showlo建立。

//的#include 的

的#include <:字串》

int n,k;

長長和= 0;

int a [15],vis [15];

void dfs(int i,int cnt,int sm)//我為陣列元素下標,cnt為數字個數,sm為cnt個數字的積

如果(i> = n)

返回;如果(!可見[1])

返回;}

int main(void)

N個數中找出最大的K個數

題目描述 有很多個 n個 無序的數,我們姑且假定它們各不相等,怎麼選出其中最大的若干個 k個 數呢?1.n 100,k 10的時候怎麼處理?2.n 1000,k 100呢?3.n 1億億個,k 100呢?如果這些數是整數的話,怎麼處理?如果是浮點數呢?如果這些數是整數,並且存在上界呢?如果將題目中的...

100w個數中找出最大的k個數

1.思路1 我們應該首先想到是先將100w個數排序,暫且不考慮效率問題,可是記憶體中能放得下嗎?2.思路2 堆排序,先從中去k個數進行堆排,然後乙個乙個數進行比較替換,每替換一次都得將堆下調一次,去保證堆得特性 函式findmaxknum 倆件事 一 取k個數進行建堆 二 進行資料替換,替換完一次下...

從n個數中選擇k個數

這是組合問題,組合問題有幾種寫法,且時間複雜度位o n 2 1 暴力迴圈,適用於固定的k 比方從7個數中找兩個數 int main sort nums.begin nums.end int count 0 for int i 0 i nums.size i cout count 2 當前數選不選,遞...