時間限制:1 秒
記憶體限制:32 兆
特殊判題:否
提交:1728
解決:441
題目描述:輸入乙個字串,按字典序列印出該字串中字元的所有排列。例如輸入字串abc,則列印出由字元a,b,c所能排列出來的所有字串abc,acb,bac,bca,cab和cba。
輸入:每個測試案例包括1行。
輸入乙個字串,長度不超過9(可能有字元重複),字元只包括大小寫字母。
輸出:對應每組資料,按字典序輸出所有排列。
樣例輸入:
abc
bca
樣例輸出:
abc
acb
bac
bca
cab
cba
abc
acb
bac
bca
cab
cba
利用深搜可以做:
#include #include #include using namespace std;
const int maxn = 10;
const int maxm = 128;
int visit[maxm];
void print_permutatio(char* pstr)
void permutatio(char* pstr, int index, const int len)
for(int i = 0; i < maxm; ++i)
}}int main()
return 0;
}
如果不要求重複的字串算作乙個,那麼可以按如下來做:
#include #include #include #include using namespace std;
const int maxn = 10;
void permutation(char* pstr, char* pbegin)
char tmp;
for(char* pch = pbegin; *pch != '\0'; ++pch)
}int main()
return 0;
}
九度 題目1049 字串去特定字元
時間限制 1 秒 記憶體限制 32 兆 特殊判題 否 提交 6162 解決 2793 題目描述 輸入字串s和字元c,要求去掉s中所有的c字元,並輸出結果。輸入 測試資料有多組,每組輸入字串s和字元c。輸出 對於每組輸入,輸出去除c字元後的結果。樣例輸入 heallo a 樣例輸出 hello 200...
九度OJ 題目1135 字串排序
題目1135 字串排序 時間限制 1 秒 記憶體限制 32 兆 特殊判題 否 提交 518 解決 254 題目描述 先輸入你要輸入的字串的個數。然後換行輸入該組字串。每個字串以回車結束,每個字串少於一百個字元。如果在輸入過程中輸入的乙個字串為 stop 也結束輸入。然後將這輸入的該組字串按每個字串的...
九度題目1054 字串內排序
題目描述 輸入乙個字串,長度小於等於200,然後將輸出按字元順序公升序排序後的字串。輸入 測試資料有多組,輸入字串。輸出 對於每組輸入,輸出處理後的結果。樣例輸入 bacd 樣例輸出 abcd 如下 include include define maxn 201 int sortbychar con...