#410. 抛瓦 · 塞托

内存限制:2 MiB 时间限制:1000 ms 标准输入输出
题目类型:传统 评测方式:文本比较
上传者: Yt

题目描述

抛瓦·塞托(power set)是集合论的一种神秘结构。给你一个集合,你要输出其对应的抛瓦·塞托结构。

一个集合的构成是这样的:首先是一个{,其次是至少0个的若干元素,用逗号分开,最后是一个}

本题中,一个集合的元素有两种。第一种,是一个整数,比如 中,有唯一的元素 。第二种,一个集合可以是另一个集合的元素。比如 这个包含三个元素的集合中,集合 和集合 都是 的元素之一。

抛瓦·塞托是一种特别的集合。它由某个集合的全部子集构成。比如, 的所有子集是

列举抛瓦·塞托的所有元素有一种简单的做法。对于一个包含 个元素的集合,遍历 的所有整数,将每个整数转换成 位二进制数。将这个二进制数的每一位与原集合的一个元素对应,最低位对应最后一个元素,最高位对应第一个元素。由二进制数的每一位 对应的元素构成的集合,就是原集合的一个子集。由全部 个整数对应的集合,依次作为元素,则可以构成原集合的抛瓦·塞托。比如, 的抛瓦·塞托是

输入格式

一个由{}1234567890,字符构成的字符串,表示一个集合。保证字符串中不含空格

输出格式

一个字符串,表示集合的抛瓦·塞托。元素顺序不可以交换。

样例

【输入样例】

{1,{2,3}}

【输出样例】

{{},{{2,3}},{1},{1,{2,3}}}

数据范围与提示

原集合的元素个数不超过 个,总长不超过 字符。

通告标题

通告内容

已知晓