演算法資料結構試題——在陣列中找出已知和的組成數
已知有12個數
現在知道其中的幾個數的和
要求知道這個和是哪幾個數的和
把所有的組合都找出來
謝謝先,幫朋友問的
/* *不知道符不符合樓主要求,測試了,編譯可通過。 */ #include <stdio.h> int main(void) { int sum(int [], int); int output(int [], int); /*已知的12個整數*/ int num[12] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12}; int tag = 45; /*已知的和值*/ int mod; /*mod第12位對應12個整數,一共有4095種情況*/ for(mod = 1; mod < 4096; ++mod) { if(tag == sum(num, mod)) { output(num, mod); printf("\n"); } } return 0; } /*計算mod情況下的和*/ int sum(int num[], int mod) { int tmp_avail[12]; int tmp_sum = 0; int i; for(i = 11; i >= 0; --i) { tmp_avail[i] = (mod >> i) % 2; tmp_sum += tmp_avail[i] * num[i]; } return tmp_sum; } /*輸出符合要求的整陣列*/ int output(int num[], int mod) { int tmp_avail[12]; int i; for(i = 0; i < 12; ++i) { tmp_avail[i] = (mod >> i) % 2; if(tmp_avail[i] == 1) { printf("%d ", num[i]); } } return 1; }
相關文章
- 演算法資料結構面試題——標記陣列在矩陣特徵識別中的應用演算法資料結構面試題陣列矩陣特徵
- JavaScript 的資料結構和演算法 - 陣列篇JavaScript資料結構演算法陣列
- 資料結構和演算法面試題系列—C指標、陣列和結構體資料結構演算法面試題指標陣列結構體
- 資料結構與演算法—稀疏陣列和佇列資料結構演算法陣列佇列
- 陣列的最小不可組成和問題陣列
- JavaScript資料結構和演算法簡述——陣列JavaScript資料結構演算法陣列
- 資料結構與演算法——陣列資料結構演算法陣列
- 【陣列】1394. 找出陣列中的幸運數(簡單)陣列
- 【資料結構與演算法】——稀疏陣列資料結構演算法陣列
- 資料結構與演算法 | 陣列(Array)資料結構演算法陣列
- 資料結構 - 陣列資料結構陣列
- 資料結構-陣列資料結構陣列
- 資料結構之陣列和連結串列資料結構陣列
- 在陣列中找出唯一的重複元素陣列
- js 中基礎資料結構陣列去重問題JS資料結構陣列
- 資料結構與演算法學習-陣列資料結構演算法陣列
- TypeScript演算法與資料結構-陣列篇TypeScript演算法資料結構陣列
- 資料結構與演算法:稀疏陣列(一)資料結構演算法陣列
- 資料結構與演算法之稀疏陣列資料結構演算法陣列
- 資料結構之「陣列」資料結構陣列
- 資料結構之陣列資料結構陣列
- 資料結構2——陣列資料結構陣列
- Java資料結構-陣列Java資料結構陣列
- 從陣列中找出N個數,其和為M的所有可能陣列
- 資料結構與演算法基礎之指標和陣列資料結構演算法指標陣列
- 資料結構和演算法面試題系列—數字題總結資料結構演算法面試題
- 資料結構之連結串列與陣列(1):陣列和連結串列的簡介資料結構陣列
- js資料結構與演算法 陣列、棧部分JS資料結構演算法陣列
- 詳解資料結構中的“陣列”與程式語言中的“陣列”的區別和聯絡資料結構陣列
- 每日一道演算法題之陣列實現資料結構演算法陣列資料結構
- js找出陣列中出現最多的元素和次數JS陣列
- 資料結構之陣列和矩陣--矩陣&不規則二維陣列資料結構陣列矩陣
- 資料結構與演算法整理總結---陣列,連結串列資料結構演算法陣列
- C#資料結構與演算法3-C# 串和陣列C#資料結構演算法陣列
- 演算法和資料結構在JS中的運用(三)演算法資料結構JS
- 剖析JS和Redis的資料結構設計:陣列JSRedis資料結構陣列
- Java版-資料結構-陣列Java資料結構陣列
- JavaScript資料結構01 - 陣列JavaScript資料結構陣列