CF708B Recover the String
题目描述
对于每个由字符 '0' 和 '1' 组成的字符串 $s$,可以定义四个整数 $a_{00}$、$a_{01}$、$a_{10}$ 和 $a_{11}$,其中 $a_{xy}$ 表示字符串 $s$ 中等于序列 $\{x, y\}$ 的长度为 $2$ 的子序列的数量。
在本题中,给定四个整数 $a_{00}$、$a_{01}$、$a_{10}$、$a_{11}$,你需要找出任意一个非空字符串 $s$,使得它对应的这四个值与给定值相同,或者判断不存在这样的字符串。可以证明,如果存在至少一个解,则一定存在长度不超过 $1000000$ 的解。
输入格式
输入仅一行,包含四个非负整数 $a_{00}$、$a_{01}$、$a_{10}$ 和 $a_{11}$。它们中的每一个都不超过 $10^9$。
输出格式
如果存在满足条件的非空字符串,则输出其中任意一个即可。否则输出 “Impossible”。输出的字符串长度不得超过 $1000000$。
说明/提示
由 ChatGPT 5 翻译