nyoj 366 D的小L(数的全排)
D的小L
- 描述
-
一天TC的匡匡找ACM的小L玩三国杀,但是这会小L忙着哩,不想和匡匡玩但又怕匡匡生气,这时小L给匡匡出了个题目想难倒匡匡(小L很D吧),有一个数n(0<n<10),写出1到n的全排列,这时匡匡有点囧了,,,聪明的你能帮匡匡解围吗?
- 输入
- 第一行输入一个数N(0<N<10),表示有N组测试数据。后面的N行输入多组输入数据,每组输入数据都是一个整数x(0<x<10)
- 输出
-
按特定顺序输出所有组合。
特定顺序:每一个组合中的值从小到大排列,组合之间按字典序排列。 - 样例输入
-
2 2 3
- 样例输出
-
12 21 123 132 213 231 312 321
-
题目大意:求一个数的全部排列 思路:题中给的数小,所以用递归求出,至于递归的过程,我还没理解的不清楚,第一个代码是c的,好费事的 下边一个是c++的,,你可以看到,c++的库函数是多么强大!唉,,伤不起的面向过程 2014,11,20
-
#include<stdio.h> #include<string.h> int a[11],b[11],n; void f(int v){int i;if(v>n){for(i=1;i<=n;i++)printf("%d",a[i]);puts("");}else{for(i=1;i<=n;i++){if(!b[i]){b[i]=1;a[v]=i;f(v+1);b[i]=0;}}} } int main(){int t,c;//,n开始忘了,又定义了一遍n然后就没有输出 scanf("%d",&t);memset(a,0,sizeof(a));memset(b,0,sizeof(b));while(scanf("%d",&n)&&t--)f(1);return 0; } //c++版 #include<stdio.h> #include<iostream> #include<algorithm> using namespace std; int a[11]={1,2,3,4,5,6,7,8,9,10}; int main(){int n,t,i;cin>>t;while(t--){cin>>n;do{for(i=0;i<n;i++)cout<<a[i];cout<<endl;}while(next_permutation(a,a+n));//c++的库函数,求一个数的全排,如果存在这个数返回值是true }return 0; }
nyoj 366 D的小L(数的全排)相关推荐
- NYOJ 366 D的小L
地址:http://acm.nyist.net/JudgeOnline/problem.php?pid=366 方法:用next_permutation(pɝmjʊ'teʃə)来求解,递归调用代码 1 ...
- NYOJ D的小L 酒馆浪人的博客
D的小L 时间限制: 4000 ms | 内存限制: 65535 KB 难度: 2 描述 一天TC的匡匡找ACM的小L玩三国杀,但是这会小L忙着哩,不想和匡匡玩但又怕匡匡生气,这时小L给匡匡出了个 ...
- (寻找第K小的数amp;amp;寻找第K小的数的和)
这一篇博客以一些OJ上的题目为载体,讲一下寻找第K小的数的方法 方法一: 先将数据排列好,然后,然后return a[k]或者将前K个数加起来 方法二: 基于高速排序.如,一次高速排序将某一个数放到了 ...
- 【代码源 Div1 - 108】#464. 数数(主席树,区间比k小的数的个数)HDU4417
problem solution 主席树查询区间比k小的数的个数 建树之后直接在目标区间的主席树内将 H 作为挡板递归计数. #include<bits/stdc++.h> using n ...
- 1526: 小L的项链切割
原题链接:http://acm.zzuli.edu.cn/problem.php?id=1526 1526: 小L的项链切割 时间限制: 1 Sec 内存限制: 128 MB 题目描述 小T送给了小 ...
- 不定期备考小tips[数模][0] #20210529
不定期备考小tips[数模][0] #20210529 边值问题 S-L微分方程中两种内积的理解 一种内积:(u,v)=∫uvdx(u,v)=\int uvdx(u,v)=∫uvdx 另一种内积:(u ...
- 13.在一个数组中,每一个数左边比当前数小的数累加起来,叫做这个数组的小和。求一个数组的小和。(左神算法基础班源码)
package basic_class_01; /*** *小和问题在一个数组中,每一个数左边比当前数小的数累加起来,叫做这个数组的小和.求一个数组的小和.例子:[1,3,4,2,5]1左边比1小的数 ...
- 分而治之策略-第m小的数(c++、java、python)
第m小的数 问题 分析 代码 问题 给定一个无重复元素的无序数组,求其第m小的元素. 如:{1,5,3,6,2,8,5} 求其第3小的元素 答案:3 分析 直观可以考虑通过对数组进行排序求解,而基于排 ...
- 第K小的数BFPRT算法
介绍 BFPRT是解决求一个数组中第K小的数的算法,可以时间O(N)的时间复杂度,而使用排序求第K小的数的算法的时间复杂度为O(NlogN),因此BFPRT算法更加高效 思想 (1)分组:将原数组每五 ...
- 小L的项链切割(dp)
题解: dp[i]表示前i+1个字符切割需要的最少次数 for(int i=0;i<l;i++) { dp[i]=huiwen(s.substr ...
最新文章
- 修改nginx服务器类型
- ubuntu连有线网 无法连接外网
- mfp 服务器控制中心,小身材大作用 固网USB打印服务器评测
- SQLServer锁的机制
- LInux学习笔记(四)-----实操排雷
- Redis 快速搭建与使用
- 163相册密码破解 - 简单版
- Spring之ApplicationContextAware接口详解
- 玩具车c语言控制程序,蓝宙电子:八岁的小朋友可以这样编程控制小汽车-汽车电子-与非网...
- .NET环境下几种不同的邮件发送解决方案
- 第 22 章 备忘录模式
- XidianOJ 1175: count
- Android 自定义View可拖动移动位置及边缘拉伸放大缩小
- 快速对二叉树和前中后序遍历的相互转化
- 推荐oracle exadata,Exadata的一些常见误区
- 手动制作一个QQ群机器人
- 【新知实验室】TRTC这么简单的demo快来试试吧
- 简体中文旗舰版Windows7SP1
- 以创新精神,重塑业务流程
- Android在Manifest里的权限配置
热门文章
- Jzoj5444【NOIP2017提高A组冲刺11.2】救赎
- pack_padded_sequence torch说明
- context deadline exceeded
- lonlife oj 1029 - Bob and Alice are playing factors
- 北京林业大学计算机考研录取分数线,北京林业大学信息学院计算机技术(专业学位)专业考研招生人数 考研报录比 考研复试分数线 考研辅导.pdf...
- Unity打包篇:关于MMD模型贴画在安卓手机上无法显示的问题。
- GameFramework篇:打包需知
- 【​观察】六脉神剑第一式-高效之唯快不破
- win10家庭版调出组策略_普通用户选择哪个Win10系统版本?家庭版与专业版的对比介绍...
- php网络编程socket通讯