组合数(2)获取C(n,k)组合数列表的QT实现
1)工程文件
QT = coreCONFIG += c++17 cmdline# You can make your code fail to compile if it uses deprecated APIs.
# In order to do so, uncomment the following line.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0SOURCES += \main.cpp# Default rules for deployment.
qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target
2)主程序
#include <QCoreApplication>
#include <vector>
#include <iostream>using namespace std;
const int N = 10;
const int K = 5;vector<vector<int>> getCombinationvector(int nums[],int ncount)
{vector<vector<int>> retvv = vector<vector<int>>();retvv.push_back(vector<int>());for (int n=0; n<ncount; n++) {int size = retvv.size();for (int i = 0; i < size; i++) {vector<int> newSub = vector<int>(retvv[i]);newSub.push_back(n);retvv.push_back(newSub);}}return retvv;
}void showCombinationvector( vector<vector<int>> va )
{std::cout << "C(" << N <<"," << K <<") = " << va.size() << "\n";std::cout << "[ \n";for (int var = 0; var < va.size(); ++var) {std::cout << " [ ";for(int j=0; j< va[var].size();j++){std::cout << va[var][j] << " ";}std::cout << "]\n";}std::cout << "]\n";
}vector<vector<int>> getCombineNK(int n, int k) {vector<int> nums = vector<int>();for(int i = 1; i < k + 1; ++i)nums.push_back(i);nums.push_back(n + 1);vector<vector<int>> retvv = vector<vector<int>>();int j = 0;while (j < k) {retvv.push_back(vector<int>(nums.begin(), nums.begin() + k));j = 0;while ((j < k) && (nums[j + 1] == nums[j] + 1)){nums[j] = j + 1;j++;}nums[j] ++ ;}return retvv;
}int main(int argc, char *argv[])
{QCoreApplication a(argc, argv);int test[] = {1,2,3,4,5};//vector<vector<int>> va = getCombinationvector(test, 5);vector<vector<int>> va = getCombineNK(10, 5);showCombinationvector(va);return a.exec();
}
3)运行结果
C(10,5) = 252
[
[ 1 2 3 4 5 ]
[ 1 2 3 4 6 ]
[ 1 2 3 5 6 ]
[ 1 2 4 5 6 ]
[ 1 3 4 5 6 ]
[ 2 3 4 5 6 ]
[ 1 2 3 4 7 ]
[ 1 2 3 5 7 ]
[ 1 2 4 5 7 ]
[ 1 3 4 5 7 ]
[ 2 3 4 5 7 ]
[ 1 2 3 6 7 ]
[ 1 2 4 6 7 ]
[ 1 3 4 6 7 ]
[ 2 3 4 6 7 ]
[ 1 2 5 6 7 ]
[ 1 3 5 6 7 ]
[ 2 3 5 6 7 ]
[ 1 4 5 6 7 ]
[ 2 4 5 6 7 ]
[ 3 4 5 6 7 ]
[ 1 2 3 4 8 ]
[ 1 2 3 5 8 ]
[ 1 2 4 5 8 ]
[ 1 3 4 5 8 ]
[ 2 3 4 5 8 ]
[ 1 2 3 6 8 ]
[ 1 2 4 6 8 ]
[ 1 3 4 6 8 ]
[ 2 3 4 6 8 ]
[ 1 2 5 6 8 ]
[ 1 3 5 6 8 ]
[ 2 3 5 6 8 ]
[ 1 4 5 6 8 ]
[ 2 45 6 8 ]
[ 3 4 5 6 8 ]
[ 1 2 3 7 8 ]
[ 1 2 4 7 8 ]
[ 1 3 4 7 8 ]
[ 2 3 4 7 8 ]
[ 1 2 5 7 8 ]
[ 1 3 5 7 8 ]
[ 2 3 5 7 8 ]
[ 1 4 5 7 8 ]
[ 2 4 5 7 8 ]
[ 3 4 5 7 8 ]
[ 1 2 6 7 8 ]
[ 1 3 6 7 8 ]
[ 2 3 6 7 8 ]
[ 1 4 6 7 8 ]
[ 2 4 6 7 8 ]
[ 3 4 6 7 8 ]
[ 1 5 6 7 8 ]
[ 2 5 6 7 8 ]
[ 3 5 6 7 8 ]
[ 4 5 6 7 8 ]
[ 1 2 3 4 9 ]
[ 1 2 3 5 9 ]
[ 1 2 4 5 9 ]
[ 1 3 4 5 9 ]
[ 2 3 4 5 9 ]
[ 1 2 3 6 9 ]
[ 1 2 4 6 9 ]
[ 1 3 4 6 9 ]
[ 2 3 4 6 9 ]
[ 1 2 5 6 9 ]
[ 1 3 5 6 9 ]
[ 2 3 5 6 9 ]
[ 1 4 5 6 9 ]
[ 2 4 5 6 9 ]
[ 3 4 5 6 9 ]
[ 1 2 3 7 9 ]
[ 1 2 4 7 9 ]
[ 1 3 4 7 9 ]
[ 2 3 4 7 9 ]
[ 1 2 5 7 9 ]
[ 1 3 5 7 9 ]
[ 2 3 5 7 9 ]
[ 1 4 5 7 9 ]
[ 2 4 5 7 9 ]
[ 3 4 5 7 9 ]
[ 1 2 6 7 9 ]
[ 1 3 6 7 9 ]
[ 2 3 6 7 9 ]
[ 1 4 6 7 9 ]
[ 2 4 6 7 9 ]
[ 3 4 6 7 9 ]
[ 1 5 6 7 9 ]
[ 2 5 6 7 9 ]
[ 3 5 6 7 9 ]
[ 4 5 6 7 9 ]
[ 1 2 3 8 9 ]
[ 1 2 4 8 9 ]
[ 1 3 4 8 9 ]
[ 2 3 4 8 9 ]
[ 1 2 5 8 9 ]
[ 1 3 5 8 9 ]
[ 2 3 5 8 9 ]
[ 1 4 5 8 9 ]
[ 2 45 8 9 ]
[ 3 4 5 8 9 ]
[ 1 2 6 8 9 ]
[ 1 3 6 8 9 ]
[ 2 3 6 8 9 ]
[ 1 4 6 8 9 ]
[ 2 4 6 8 9 ]
[ 3 4 6 8 9 ]
[ 1 5 6 8 9 ]
[ 2 5 6 8 9 ]
[ 3 5 6 8 9 ]
[ 4 5 6 8 9 ]
[ 1 2 7 8 9 ]
[ 1 3 7 8 9 ]
[ 2 3 7 8 9 ]
[ 1 4 7 8 9 ]
[ 2 4 7 8 9 ]
[ 3 4 7 8 9 ]
[ 1 5 7 8 9 ]
[ 2 5 7 8 9 ]
[ 3 5 7 8 9 ]
[ 4 5 7 8 9 ]
[ 1 6 7 8 9 ]
[ 2 6 7 8 9 ]
[ 3 6 7 8 9 ]
[ 4 6 7 8 9 ]
[ 5 6 7 8 9 ]
[ 1 2 3 4 10 ]
[ 1 2 3 5 10 ]
[ 1 2 4 5 10 ]
[ 1 3 4 5 10 ]
[ 2 3 4 5 10 ]
[ 1 2 3 6 10 ]
[ 1 2 4 6 10 ]
[ 1 3 4 6 10 ]
[ 2 3 4 6 10 ]
[ 1 2 5 6 10 ]
[ 1 3 5 6 10 ]
[ 2 3 5 6 10 ]
[ 1 4 5 6 10 ]
[ 2 4 5 6 10 ]
[ 3 4 5 6 10 ]
[ 1 2 3 7 10 ]
[ 1 2 4 7 10 ]
[ 1 3 4 7 10 ]
[ 2 3 4 7 10 ]
[ 1 2 5 7 10 ]
[ 1 3 5 7 10 ]
[ 2 3 5 7 10 ]
[ 1 4 5 7 10 ]
[ 2 4 5 7 10 ]
[ 3 4 5 7 10 ]
[ 1 2 6 7 10 ]
[ 1 3 6 7 10 ]
[ 2 3 6 7 10 ]
[ 1 4 6 7 10 ]
[ 2 4 6 7 10 ]
[ 3 4 6 7 10 ]
[ 1 5 6 7 10 ]
[ 2 5 6 7 10 ]
[ 3 5 6 7 10 ]
[ 4 5 6 7 10 ]
[ 1 2 3 8 10 ]
[ 1 2 4 8 10 ]
[ 1 3 4 8 10 ]
[ 2 3 4 8 10 ]
[ 1 2 5 8 10 ]
[ 1 3 5 8 10 ]
[ 2 3 5 8 10 ]
[ 1 4 5 8 10 ]
[ 2 4 5 8 10 ]
[ 3 4 5 8 10 ]
[ 1 2 6 8 10 ]
[ 1 3 6 8 10 ]
[ 2 3 6 8 10 ]
[ 1 4 6 8 10 ]
[ 2 4 6 8 10 ]
[ 3 4 6 8 10 ]
[ 1 5 6 8 10 ]
[ 2 5 6 8 10 ]
[ 3 5 6 8 10 ]
[ 4 5 6 8 10 ]
[ 1 2 7 8 10 ]
[ 1 3 7 8 10 ]
[ 2 3 7 8 10 ]
[ 1 4 7 8 10 ]
[ 2 4 7 8 10 ]
[ 3 4 7 8 10 ]
[ 1 5 7 8 10 ]
[ 2 5 7 8 10 ]
[ 3 5 7 8 10 ]
[ 4 5 7 8 10 ]
[ 1 6 7 8 10 ]
[ 2 6 7 8 10 ]
[ 3 6 7 8 10 ]
[ 4 6 7 8 10 ]
[ 2 6 8 9 10 ]
[ 3 6 8 9 10 ]
[ 4 6 8 9 10 ]
[ 5 6 8 9 10 ]
[ 1 7 8 9 10 ]
[ 2 7 8 9 10 ]
[ 3 7 8 9 10 ]
[ 4 7 8 9 10 ]
[ 5 7 8 9 10 ]
[ 6 7 8 9 10 ]
]
相关文章:
组合数(2)获取C(n,k)组合数列表的QT实现
1)工程文件 QT coreCONFIG c17 cmdline# You can make your code fail to compile if it uses deprecated APIs. # In order to do so, uncomment the following line. #DEFINES QT_DISABLE_DEPRECATED_BEFORE0x060000 # disables all the APIs deprecated before Qt 6.…...
SparkCore编程RDD
RDD概述 中文名为弹性分布式数据集,是数据处理基本单位。代表一个弹性的,不可变,可分区,里面的数据可并行计算的集合。 RDD和Hadoop MR 的区别: RDD是先明确数据处理流程,数据在行动算子执行前实际上并未…...
VBA技术资料MF69:添加和删除工作表中的分页符
我给VBA的定义:VBA是个人小型自动化处理的有效工具。利用好了,可以大大提高自己的工作效率,而且可以提高数据的准确度。我的教程一共九套,分为初级、中级、高级三大部分。是对VBA的系统讲解,从简单的入门,到…...
数字技术助力智慧公厕,让公厕变身为全新创新应用
在如今数字化的时代,数字技术的集成应用已经渗透到了生活的方方面面。其中一个令人瞩目的领域就是智慧公厕。以前只是简单的厕所,如今借助数字技术的力量,智慧公厕变得功能强大、智能高效。接下来,我们将以智慧公厕源头领航厂家广…...
electron 升级 v22 遇到问题
Electron 漏洞 https://mp.weixin.qq.com/s/5LpSJb_5uV8EIDOl3fz9Tw 由于 23以上不在支持win 7 8 8.1 所以我选择安装 v22.3.24 electron 22.3.24 node-sass 6.0.1 sass-loader 10.4.1 对应的版本 npm i node-sass6.0.1 --sass_binary_sitehttps://npm.taobao.org/mirrors…...
跟我学c++中级篇——Pimpl
一、前向声明 前向声明或者前置声明(forward declaration),这个在c中用得还是比较多的。一般的框架或者库中,经常可以看到在一个类的前面声明了一个类,类似下面这样: class useclass; class mycall{...useclass *us; };前向声明…...
[补题记录] Atcoder Beginner Contest 295(E)
URL:https://atcoder.jp/contests/abc295 目录 E Problem/题意 Thought/思路 Code/代码 E Problem/题意 给定长度为 N 的数组 A。进行如下操作: 若 Ai 0,将 Ai 等概率地变为 1 ~ M 中的任意一个数;对 A 排序; …...
解决git在window11操作很慢,占用很大cpu的问题
【git在window11操作很慢,占用很大cpu,最后也执行失败】 在谷歌输入:git very slow in window 11。通过下面链接终于找到了解决方案: https://www.reddit.com/r/vscode/comments/sulebx/slow_git_in_wsl_after_updating_to_window…...
C++智能指针(二)——weak_ptr初探
文章目录 1. shared_ptr 存在的问题2. 使用weak_ptr2.1 初始化 weak_ptr2.2 访问数据 3. 附录4. 参考文献 1. shared_ptr 存在的问题 与 shared_ptr 的引入要解决普通指针存在的一些问题一样,weak_ptr 的引入,也是因为 shared_ptr 本身在某些情况下&…...
540 - Team Queue (UVA)
题目链接如下: Online Judge 对比刘汝佳的代码,我没有用queue来排整个队伍,因为那样的话遍历整个队伍太麻烦,vector比较方便。但vector删除元素比较耗时,所以就不删了,仅仅用pivot来指代目前队伍的开始。…...
投资组合之如何估值
文章目录 如何估值一、PE估值法1、PE估值法的定义2、参考标准(1)常规标准:25倍合理市盈率。(2)同行业对比。(3)跟历史市盈率相比。 3、PE估值法的适用范围4、PE估值法的优势5、PE估值法的劣势&a…...
2024届通信工程保研经验分享(预推免入营即offer)
2024届通信工程保研经验分享(预推免入营即offer) BackGround夏令营情况:预推免情况: BackGround 本科院校:末九 专业:通信工程 rank:3/123(预推免绩点排名)࿰…...
L2-025 分而治之 - java
L2-025 分而治之 时间限制 600 ms 内存限制 64 MB 题目描述: 分而治之,各个击破是兵家常用的策略之一。在战争中,我们希望首先攻下敌方的部分城市,使其剩余的城市变成孤立无援,然后再分头各个击破。为此参谋部提供了若…...
Python+高光谱数据预处理-机器学习-深度学习-图像分类-参数回归
涵盖高光谱遥感数据处理的基础、python开发基础、机器学习和应用实践。重点解释高光谱数据处理所涉及的基本概念和理论,旨在帮助学员深入理解科学原理。结合Python编程工具,专注于解决高光谱数据读取、数据预处理、高光谱数据机器学习等技术难题…...
免费 AI 编程助手 Amazon CodeWhisperer 体验
文章作者:文章作者:米菲爸爸 2022 年 6 月 23 亚马逊云科技就已经推出了 Amazon CodeWhisperer(预览版)。经过不到一年的测试和 AIGC的飓风在 2023 年 4 月 18 日实时 AI 编程助手 Amazon CodeWhisperer正式可用 Amazon CodeWhis…...
【Linux】从零开始学习Linux基本指令(一)
🚩纸上得来终觉浅, 绝知此事要躬行。 🌟主页:June-Frost 🚀专栏:Linux入门 🔥该文章主要了解Linux操作系统下的基本指令。 目录: ⌛️指令的理解⏳目录和文件的理解⏳一些常见指令✉…...
Java GC 算法
一、概述 理解Java虚拟机垃圾回收机制的底层原理,是成为一个高级Java开发者的基本功。本文从底层的垃圾回收算法开始,着重去阐释不同垃圾回收器在算法设计和实现时的一些技术细节,去探索「why」这一部分,通过对比不同的垃圾回收算…...
vue3 v-html中使用v-viewer
安装:npm install v-viewernext 在main.js中配置 import “viewerjs/dist/viewer.css”; import Viewer from “v-viewer”; app.use(Viewer, { Options: { inline: true, //默认值:false。启用内联模式。 button: true, //在查看器的右上角显示按钮。 …...
Leetcode算法解析——查找总价格为目标值的两个商品
1. 题目链接:LCR 179. 查找总价格为目标值的两个商品 2. 题目描述: 商品价格按照升序记录于数组 price。请在购物车中找到两个商品的价格总和刚好是 target。若存在多种情况,返回任一结果即可。 示例 1: 输入:price …...
unity游戏开发引擎unity3D开发
Unity(也被称为Unity3D)是一款强大的跨平台游戏引擎,用于开发2D和3D游戏,以及其他交互式应用程序。以下是Unity游戏开发的一般步骤: 安装和设置Unity: 首先,您需要下载并安装Unity。确保选择适…...
效果实测:Image-to-Video如何将风景照变成动态视频?
效果实测:Image-to-Video如何将风景照变成动态视频? 1. 惊艳的开场:静态照片"活"起来了 想象一下,你手机里那些美丽的风景照片突然"活"了过来——海浪开始翻滚,云朵缓缓飘动,树叶在微…...
Qwen3-14B GPU算力优化实践:显存占用降低28%的FlashAttention-2配置
Qwen3-14B GPU算力优化实践:显存占用降低28%的FlashAttention-2配置 1. 开箱即用的私有部署方案 对于想要快速部署Qwen3-14B大模型的企业和个人开发者来说,这个经过优化的私有部署镜像提供了完美的解决方案。它基于RTX 4090D 24GB显存显卡和CUDA 12.4环…...
TouchGal:3个关键功能让你成为真正的Galgame收藏家
TouchGal:3个关键功能让你成为真正的Galgame收藏家 【免费下载链接】kun-touchgal-next TouchGAL是立足于分享快乐的一站式Galgame文化社区, 为Gal爱好者提供一片净土! 项目地址: https://gitcode.com/gh_mirrors/ku/kun-touchgal-next 你是否曾为寻找心仪的…...
还在用老掉牙的HashTab?2024年最新文件哈希校验工具横向评测(附下载)
2024年文件哈希校验工具终极指南:告别过时方案,拥抱高效验证 还在为文件完整性验证发愁?每次下载重要软件都要反复核对哈希值却找不到趁手工具?作为从业十年的信息安全顾问,我见证了哈希校验工具从简陋到专业的演变。今…...
从3天到30分钟:OpCore-Simplify如何重构黑苹果配置的技术民主化之路
从3天到30分钟:OpCore-Simplify如何重构黑苹果配置的技术民主化之路 【免费下载链接】OpCore-Simplify A tool designed to simplify the creation of OpenCore EFI 项目地址: https://gitcode.com/GitHub_Trending/op/OpCore-Simplify 在黑苹果技术领域&…...
intv_ai_mk11应用场景:新媒体运营——热点事件评论草稿、标题党生成、互动话术
intv_ai_mk11在新媒体运营中的三大实战应用 1. 新媒体运营的痛点与AI解决方案 新媒体运营人员每天面临三大核心挑战:快速跟进热点事件、创作吸引眼球的标题、设计有效的互动话术。传统人工创作方式不仅耗时耗力,而且难以保证持续高质量输出。 intv_ai…...
CTF实战:手把手教你用fastcoll工具复现MD5碰撞攻击(附Python验证脚本)
CTF实战:手把手教你用fastcoll工具复现MD5碰撞攻击(附Python验证脚本) 在网络安全竞赛和渗透测试中,MD5碰撞攻击是一个经典且实用的技术点。本文将带你从零开始,完整复现MD5碰撞攻击的全过程,包括工具使用、…...
Rocky Linux 9.4 Minimal安装后必做的10件事:安全加固、性能优化与开发环境搭建
Rocky Linux 9.4 Minimal安装后必做的10件事:安全加固、性能优化与开发环境搭建 当你完成Rocky Linux 9.4 Minimal的安装,面对那个极简的命令行界面时,可能会感到一丝茫然。这个"裸"系统虽然轻量,但距离生产环境或高效开…...
用快马AI十分钟搞定数据库课程设计原型:学生选课系统从ER图到可运行Demo
今天想和大家分享一个超实用的数据库课程设计经验——如何用InsCode(快马)平台快速搭建学生选课系统原型。作为计算机专业学生,每次做数据库课设最头疼的就是从零开始写代码,但这次我发现了一个超级省时的方法。 ER图设计思路 首先需要明确系统核心实体&…...
3步上手ComfyUI-LTXVideo:让文字和图片动起来的AI视频魔法
3步上手ComfyUI-LTXVideo:让文字和图片动起来的AI视频魔法 【免费下载链接】ComfyUI-LTXVideo LTX-Video Support for ComfyUI 项目地址: https://gitcode.com/GitHub_Trending/co/ComfyUI-LTXVideo 想不想把你的文字描述变成生动的视频?或者让静…...
