码迷,mamicode.com
首页 > 编程语言 > 详细

算法提高 排列数

时间:2017-02-07 20:08:56      阅读:179      评论:0      收藏:0      [点我收藏+]

标签:color   name   space   包含   view   算法   class   names   stdin   

  算法提高 排列数  
时间限制:1.0s   内存限制:256.0MB
    
问题描述
  0、1、2三个数字的全排列有六种,按照字母序排列如下:
  012、021、102、120、201、210
  输入一个数n
  求0~9十个数的全排列中的第n个(第1个为0123456789)。
输入格式
  一行,包含一个整数n
输出格式
  一行,包含一组10个数字的全排列
样例输入
1
样例输出
0123456789
数据规模和约定
  0 < n <= 10!
#include <iostream>
#include <cstdio>
#include <vector>
#include <queue>
#include <cstring>
#include <algorithm>
#include <cstdlib>
#define for(i,x,n) for(int i=x;i<n;i++)
#define ll long long int
#define INF 0x3f3f3f3f
#define MOD 1000000007
#define MAX_N 50005

using namespace std;

int main()
{
    //freopen("data.txt", "r", stdin);
    //freopen("data.out", "w", stdout);
    int a[30];
    int n;
    scanf("%d",&n);
    for(i,0,10){
        a[i]=i;
    }
    for(i,1,n){
        next_permutation(a,a+10);
    }
    for(i,0,10){
        printf("%d",a[i]);
    }
    //fclose(stdin);
    //fclose(stdout);
    return 0;
}

 

算法提高 排列数

标签:color   name   space   包含   view   算法   class   names   stdin   

原文地址:http://www.cnblogs.com/TWS-YIFEI/p/6375532.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!