贝蒂买桔子
贝蒂去超市买桔子,超市有n个桔子,每个桔子都有唯一的英文字母标号,贝蒂打算从所有桔子中挑选出若干个桔子买(也可能一个都不买),请编写程序帮助贝蒂求出所有可能的挑法。每种挑法按字典序给出各桔子的标号。
字典序,即字符串在字典中的顺序。对于两个字符串,从第一个字符开始比较,当某一个位置的字符不同时,该位置字符较小的串,字典序较小,例如abc比abd小。
输入格式:
输入为一个正整数n,表示超市里的桔子个数,n不超过15。桔子的标号为a, b, c, d…。若n=1,桔子为a;若n=3,桔子为a, b, c;若n=4,桔子为a, b, c, d;以此类推。
输出格式:
输出为若干行字符串,每行表示贝蒂的一种挑法。每种挑法用{}包含,每个桔子的标号用西文逗号间隔,例如{a,b,c},标号须按字典序排列。“什么也不买”对应的挑法最先输出,为{},中间无空格。
输入样例:
3
输出样例:
{} {a} {a,b} {a,b,c} {a,c} {b} {b,c} {c}
1 /* 2 *@Author: jingshenxiaohuo 3 *@Language: C++ 4 * __----~~~~~~~~~~~------___ 5 //////////////////////////////////////////////////////////////////// 6 // _ooOoo_ // 7 // o8888888o // 8 // 88" . "88 // 9 // (| ^_^ |) // 10 // O\ = /O // 11 // ____/`---'\____ // 12 // .' \\| |// `. // 13 // / \\||| : |||// \ // 14 // / _||||| -:- |||||- \ // 15 // | | \\\ - /// | | // 16 // | \_| ''\---/'' | | // 17 // \ .-\__ `-` ___/-. / // 18 // ___`. .' /--.--\ `. . ___ // 19 // ."" '< `.___\_<|>_/___.' >'"". // 20 // | | : `- \`.;`\ _ /`;.`/ - ` : | | // 21 // \ \ `-. \_ __\ /__ _/ .-` / / // 22 // ========`-.____`-.___\_____/___.-`____.-'======== // 23 // `=---=' // 24 // ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ // 25 // Buddha bless never bugs // 26 //////////////////////////////////////////////////////////////////// 27 */ 28 29 #include30 #include 31 #include 32 #include 33 #include 34 #include