3条回答 默认 最新
真相重于对错 2022-01-14 12:30关注其实就是求组合,C(n,1),c(n,2),c(n,3),跟动态规划没啥关系
#include <iostream> #include <vector> using namespace std; class project { void combin(vector<char> team, int pos, int n, vector<char>& item) { int size = team.size(); if (n == 0) { res.push_back(item); return; } for (int i = pos; i < size; i++) { item.push_back(team[i]); combin(team, i + 1, n - 1, item); item.pop_back(); } } public: vector<vector<char>> res; void getresult(vector<char> vecteam, int size) { vector<char> tmp; combin(vecteam, 0, size, tmp); } }; int main() { vector<char> team{ 'A','B','C' }; project p; p.getresult(team, 1); p.getresult(team, 2); p.getresult(team, 3); for (auto v : p.res) { for (auto c : v) { cout << c << " "; } cout << endl; } }评论 打赏 举报解决 1无用