跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 请教算法题『要求和等于自然数 n,每个加数都必需是小于等于 k 的正整数,不限加数的数量,有多少钟可能』的思路
未分類
5 9 月 2020

请教算法题『要求和等于自然数 n,每个加数都必需是小于等于 k 的正整数,不限加数的数量,有多少钟可能』的思路

请教算法题『要求和等于自然数 n,每个加数都必需是小于等于 k 的正整数,不限加数的数量,有多少钟可能』的思路

資深大佬 : Newyorkcity 5

k 一定是正整数

比如 n = 3, k = 3,有:

3 = 3

3 = 2 + 1 ( 3=1+2 是同一种可能)

3 = 1 + 1 + 1

三种可能。

如果 n = 3 k = 2 则只有:

3 = 2 +1

3 = 1 + 1 + 1 三种可能

谢谢

大佬有話說 (3)

  • 資深大佬 : jingous

    最简单的回溯法

  • 資深大佬 : jingous

    class Solution {
    public:
    vector<vector<int>> SumEqualN(int n, int k) {
    vector<vector<int>> res;
    vector<int> tmp;
    dfs(res,tmp,n,k,1,0);
    return res;
    }
    void dfs(vector<vector<int>>& res, vector<int>& tmp, int n, int k, int idx, int sum){
    if(sum == n){
    res.push_back(tmp);
    return ;
    }
    for(int i=idx; i<=k; ++i){
    if(sum+i <= n){
    tmp.push_back(i);
    dfs(res,tmp,n,k,i,sum+i);
    tmp.pop_back();
    }
    }
    }
    };

  • 資深大佬 : zxCoder

    完全背包方案数

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具