蓝桥杯_算法提高_排列数(深度搜索、递归)
来源:互联网 发布:丹尼尔惠灵顿淘宝高仿 编辑:程序博客网 时间:2024/06/17 06:05
问题描述
0、1、2三个数字的全排列有六种,按照字母序排列如下:
012、021、102、120、201、210
输入一个数n
求0~9十个数的全排列中的第n个(第1个为0123456789)。
输入格式
一行,包含一个整数n
输出格式
一行,包含一组10个数字的全排列
样例输入
1
样例输出
0123456789
数据规模和约定
0 < n <= 10!
import java.util.Scanner;/** * @author 翔 * */public class Main { private static int[] arr=new int[10]; private static boolean[] hasVisited=new boolean[10]; private static int n; private static int count=0; /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Scanner sc=new Scanner(System.in); n=sc.nextInt(); dfs(0); } private static void dfs(int pos){ if(pos==10){ count++; if(count==n){ for(int i=0;i<10;i++){ System.out.print(arr[i]); } } } for(int i=0;i<=9;i++){ if(!hasVisited[i]){ arr[pos]=i; hasVisited[i]=true; dfs(pos+1); hasVisited[i]=false; } } }}
0 0
- 蓝桥杯_算法提高_排列数(深度搜索、递归)
- 蓝桥杯 ADV-188 算法提高 排列数(java) 深度优先搜索 DFS
- 数据结构_递归算法的应用_打印n个数的全排列数
- 蓝桥杯 算法提高 排列数
- 蓝桥杯-算法提高-排列数
- 蓝桥杯算法提高 排列数
- 蓝桥杯 算法提高 排列数
- 蓝桥杯 算法提高 排列数
- 蓝桥杯_算法提高_概率计算(动态规划)
- 蓝桥杯_算法提高_最大乘积
- 蓝桥杯_算法提高_判断名次
- 算法提高 排列数
- 算法提高 排列数
- 算法提高 排列数
- 算法提高 排列数
- 算法提高 排列数
- 算法提高 排列数
- 算法提高 排列数
- 2016-4-01华为校招实习机试
- 清明时节雨纷纷,心思却剪不断,理还乱
- FatMouse' Trade
- hdu 4547(LCA+Tarjan)
- 环形队列中实现队列的基本运算
- 蓝桥杯_算法提高_排列数(深度搜索、递归)
- Swift延迟加载的一种用途
- 文章标题
- FZU 2104 Floor problem(floor)
- service中获取sharedpreferences数据不同步
- 支付宝转账过程并发交易引起的分布式死锁问题
- 欢迎使用CSDN-markdown编辑器
- 基于cocoapods安装Masonry框架
- IBM也要开源机器学习平台