時間限制:
1000 ms | 記憶體限制:
65535 kb
難度:4
描述
小明十分聰明,而且十分擅長排列計算。比如給小明乙個數字5,他能立刻給出1-5按字典序的全排列,如果你想為難他,在這5個數字中選出幾個數字讓他繼續全排列,那麼你就錯了,他同樣的很擅長。現在需要你寫乙個程式來驗證擅長排列的小明到底對不對。
輸入第一行輸入整數n(1輸出
在1-n中選取m個字元進行全排列,按字典序全部輸出,每種排列佔一行,每組資料間不需分界。如樣例
樣例輸入
23 14 2
樣例輸出
1231213
1421
2324
3132
3441
4243
//解法的用意是所有數的全排列的前m個數也包括了n個數中抽取m個數的全排列。
next_permutation函式 功能是輸出所有比當前排列大的排列,順序是從小到大,與之相對的還有乙個prev_permutation函式;而prev_permutation()函式功能是輸出所有比當前排列小的排列,順序是從大到小。
#include#include#include#includeusing namespace std;
int main()
{ int n,n,m;
cin>>n;
while(n--){
cin>>n>>m;
string s1,s2;
for(int i =1;i <=n;i++)
s1+=('0'+i);
s2=s1.substr(0,m);
cout<
擅長排列的小明
時間限制 1000 ms 記憶體限制 65535 kb 難度 4 描述 小明十分聰明,而且十分擅長排列計算。比如給小明乙個數字5,他能立刻給出1 5按字典序的全排列,如果你想為難他,在這5個數字中選出幾個數字讓他繼續全排列,那麼你就錯了,他同樣的很擅長。現在需要你寫乙個程式來驗證擅長排列的小明到底對...
擅長排列的小明
時間限制 1000 ms 記憶體限制 65535 kb 難度 4 描述 小明十分聰明,而且十分擅長排列計算。比如給小明乙個數字5,他能立刻給出1 5按字典序的全排列,如果你想為難他,在這5個數字中選出幾個數字讓他繼續全排列,那麼你就錯了,他同樣的很擅長。現在需要你寫乙個程式來驗證擅長排列的小明到底對...
擅長排列的小明
時間限制 1000 ms 記憶體限制 65535 kb 難度 4 描述 小明十分聰明,而且十分擅長排列計算。比如給小明乙個數字5,他能立刻給出1 5按字典序的全排列,如果你想為難他,在這5個數字中選出幾個數字讓他繼續全排列,那麼你就錯了,他同樣的很擅長。現在需要你寫乙個程式來驗證擅長排列的小明到底對...