讨论/题目交流/集合求子集/
集合求子集

[问题描述]
给定一个集合A,求A的所有非空子集。例如A={a,b}时,则它的所有非空子集为{a},{b},{a,b}。集合A不空,并且A的元素个数不超过10个。
[输入]
有多组测试数据,每组测试数据为一行。
每行表示一个集合,集合由一对大括号括起来,集合之间的元素用一个逗号隔开。之间没有任何的空白字符。已经知道集合元素按字典顺序排列。
[输出]
每组测试数据输出为2^n-1行,每行表示一个非空子集。子集与子集的顺序参考输出样列。(对应的二进制由小到大)
每个子集的元素按字典顺序排列,元素之间用逗号隔开,没有任何的空白字符。子集由一对大括号括起来。
[输入样列]
{a,b,c}
[输出样例]
{a}
{b}
{a,b}
{c}
{a,c}
{b,c}
{a,b,c}

展开讨论
qbz95发起于 2020-03-18

就是子集问题,开一个res,二维数组吧,记录集合里的元素。遍历集合,每次遇到一个数,就把当前已添加的子集加上这个数,添加到集合即可

展开全部 3 讨论