国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

HDU:1027 Ignatius and the Princess II

2019-11-06 06:26:48
字體:
來源:轉載
供稿:網友

Ignatius and the PRincess II

Time Limit: 2000/1000 MS (java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 7791    Accepted Submission(s): 4601題目鏈接Problem DescriptionNow our hero finds the door to the BEelzebub feng5166. He opens the door and finds feng5166 is about to kill our pretty Princess. But now the BEelzebub has to beat our hero first. feng5166 says, "I have three question for you, if you can work them out, I will release the Princess, or you will be my dinner, too." Ignatius says confidently, "OK, at last, I will save the Princess.""Now I will show you the first problem." feng5166 says, "Given a sequence of number 1 to N, we define that 1,2,3...N-1,N is the smallest sequence among all the sequence which can be composed with number 1 to N(each number can be and should be use only once in this problem). So it's easy to see the second smallest sequence is 1,2,3...N,N-1. Now I will give you two numbers, N and M. You should tell me the Mth smallest sequence which is composed with number 1 to N. It's easy, isn't is? Hahahahaha......"Can you help Ignatius to solve this problem? InputThe input contains several test cases. Each test case consists of two numbers, N and M(1<=N<=1000, 1<=M<=10000). You may assume that there is always a sequence satisfied the BEelzebub's demand. The input is terminated by the end of file. OutputFor each test case, you only have to output the sequence satisfied the BEelzebub's demand. When output a sequence, you should print a space between two numbers, but do not output any spaces after the last number. Sample Input
6 411 8 Sample Output
1 2 3 5 6 41 2 3 4 5 6 7 9 8 11 10解題思路:題目意思就是給出一個數N,則它有一個序列1~N,求它全排列的第M小數。例如第一組測試數據6 4第一小全排列    1 2 3 4 5 6第二小全排列    1 2 3 4 6 5第三小全排列    1 2 3 5 4 6第四小全排列    1 2 3 5 6 4則答案就是1 2 3 5 6 4只要讀懂了題目的意思,就不要擔心了。因為STL中有一個求全排列的函數可以幫我們解決這個問題。頭文件algorithm中包含一個函數next_permutation可以求全排列,那么這個題就變得非常簡單了,加上頭文件,然后直接調用函數就可以了。
#include <iostream>#include <stdio.h>#include <string.h>#include <algorithm>#include <queue>#include <string>using namespace std;int a[100000];int main(){    int m,n,i;    while(~scanf("%d%d",&m,&n))    {        for(i = 0; i < m; i++)            a[i]=i+1;        n = n-1;  //第一個數是第一個排列數        while(n--)        {            next_permutation(a,a+m);        }        printf("%d",a[0]);        for(i = 1; i < m; i++)            printf(" %d",a[i]);        printf("/n");    }    return 0;} 
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 巫山县| 丘北县| 崇州市| 青岛市| 上蔡县| 浏阳市| 门头沟区| 弥勒县| 卓尼县| 新昌县| 长汀县| SHOW| 罗源县| 怀化市| 江安县| 平泉县| 塔河县| 晋中市| 紫云| 阳原县| 黎城县| 班玛县| 华安县| 当雄县| 南江县| 哈尔滨市| 台东县| 江门市| 曲周县| 三门县| 平远县| 壶关县| 海丰县| 安西县| 普兰店市| 河北区| 旅游| 沂南县| 克山县| 长寿区| 江门市|