当前位置: 首页 > news >正文

【题解-洛谷】B3622 枚举子集(递归实现指数型枚举)

题目:B3622 枚举子集(递归实现指数型枚举)

题目描述

今有 n n n 位同学,可以从中选出任意名同学参加合唱。

请输出所有可能的选择方案。

输入格式

仅一行,一个正整数 n n n

输出格式

若干行,每行表示一个选择方案。

每一种选择方案用一个字符串表示,其中第 i i i 位为 Y 则表示第 i i i 名同学参加合唱;为 N 则表示不参加。

需要以字典序输出答案。

输入输出样例 #1

输入 #1

3

输出 #1

NNN
NNY
NYN
NYY
YNN
YNY
YYN
YYY

说明/提示

对于 100 % 100\% 100% 的数据,保证 1 ≤ n ≤ 10 1\leq n\leq 10 1n10

代码

#include<iostream>using namespace std;const int Maxn = 10 + 10;int n, vis[Maxn];void dfs(int pos){if(pos == n){for(int i = 0; i < n; i ++){if(vis[i]){cout << "Y";}else{cout << "N";}}puts("");return;}dfs(pos + 1); // 该位置不参加vis[pos] = 1;dfs(pos + 1); // 该位置参加vis[pos] = 0;
}int main(){cin >> n;dfs(0);return 0;
}

结果

在这里插入图片描述
在这里插入图片描述

http://www.dtcms.com/a/237835.html

相关文章:

  • 并发编程实战(生产者消费者模型)
  • 构建智能对话式BI的关键:ChatBI场景下的Agent框架选型深
  • 电脑商城--用户注册登录
  • Object.assign() 和扩展运算符(...)
  • 汇编语言学习(三)——DoxBox中debug的使用
  • Golang基础学习
  • 关于GitHub action云编译openwrt
  • 【深度学习-Day 24】过拟合与欠拟合:深入解析模型泛化能力的核心挑战
  • 功能安全实战系列09-英飞凌TC3xx LBIST开发详解
  • 【评测】用Flux的图片文本修改的PS效果
  • JDK21深度解密 Day 14:生产环境监控与排错
  • 算法训练第十天
  • Linux 下关于 ioremap 系列接口
  • 如何判断指针是否需要释放?
  • Cell-o1:强化学习训练LLM解决单细胞推理问题
  • FPGA 可重构技术的实现方法
  • 分享两个日常办公软件:uTools、PixPin
  • 好未来0520上机考试题2:有效三角形的个数
  • 【大模型原理与技术-毛玉仁】第五章 模型编辑
  • 并行硬件环境及并行编程
  • Shell 命令及运行原理 + 权限的概念(7)
  • 手拉手处理RuoYi脚手架常见文问题
  • 【Qlib】Windows上Qlib安装与初步使用
  • 量子电路设计:以 Qiskit 为例
  • PicSharp(图片压缩工具) v1.1.6
  • 分享5个免费5个在线工具网站:Docsmall、UIED Tool在线工具箱、草料二维码、图片在线压缩、表情符号
  • python的numpy的MKL加速
  • 日志收集工具-Filebeat
  • 图卷积网络:从理论到实践
  • 22、模板特例化