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

首頁 > 學院 > 開發(fā)設計 > 正文

NYOJ-19

2019-11-11 00:33:14
字體:
來源:轉載
供稿:網(wǎng)友

擅長排列的小明

時間限制:1000 ms  |  內(nèi)存限制:65535 KB難度:4描述小明十分聰明,而且十分擅長排列計算。比如給小明一個數(shù)字5,他能立刻給出1-5按字典序的全排列,如果你想為難他,在這5個數(shù)字中選出幾個數(shù)字讓他繼續(xù)全排列,那么你就錯了,他同樣的很擅長。現(xiàn)在需要你寫一個程序來驗證擅長排列的小明到底對不對。輸入第一行輸入整數(shù)N(1<N<10)表示多少組測試數(shù)據(jù),每組測試數(shù)據(jù)第一行兩個整數(shù) n m (1<n<9,0<m<=n)輸出在1-n中選取m個字符進行全排列,按字典序全部輸出,每種排列占一行,每組數(shù)據(jù)間不需分界。如樣例樣例輸入
23 14 2樣例輸出
123121314212324313234414243

解題思路:

本題主要考全排列的解決代碼,但最好的便是運用c++的STL中的next_permutation()函數(shù),本人將全排列的代碼及思路寫在上一篇博客中了,有興趣可以看一下http://blog.csdn.net/chenyang890/article/details/54915242

本題代碼

#include<iostream>#include<stdio.h>#include<algorithm>using namespace std;int main(){    int T;    cin>>T;    while(T--)    {        int n,m;        string s1,s2;        cin>>n>>m;        for(int i=1;i<=n;i++)            s1+='0'+i;        s2=s1.substr(0,m);        cout<<s2<<endl;        while(next_permutation(s1.begin(),s1.end()))        {            if(s2!=s1.substr(0,m))            {                s2=s1.substr(0,m);                cout<<s2<<endl;            }        }    }    return 0;}


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 绥芬河市| 南召县| 林州市| 望城县| 家居| 盐池县| 四子王旗| 凉山| 通化县| 明溪县| 怀化市| 湘乡市| 福清市| 虹口区| 七台河市| 大荔县| 仁布县| 敖汉旗| 镇坪县| 阳江市| 龙口市| 榆中县| 育儿| 乌鲁木齐县| 南雄市| 云安县| 高要市| 明光市| 平和县| 滨州市| 井冈山市| 东莞市| 凌源市| 大关县| 咸丰县| 肃北| 盐城市| 麻江县| 察隅县| 宜君县| 沐川县|