浙理工2023新生赛|渚千夏的串
🚀 题目浏览
【题目描述】
我们定义一个 01 串的权值,是其子序列为 01 的个数。
先给定权值 m ,试构造一个合法的 01 串使其权值为 m 且长度在 10^5 以内。
01 串即字符集仅包含 0,1 的字符串。
注意:序列 a 是字符串 b 的子序列,当且仅当 a 可以通过删除 b 中的若干(可能为零或全部)元素得到。例如:对于串 01011,字符串 1011,111 都是它的子序列。
【输入】
输入包含一个正整数 $m (0 \leq m \leq 10^9)$ ,代表 01 子序列的个数。
输入数据保证有解。
【输出】
输出第一行,包含一个正整数 $n (1 \leq n \leq 10^5)$,表示 01 串的长度。
输出第二行,包含一个长为 n 的 01 串。
【输入样例1】
2
【输出样例1】
3
001
【输入样例2】
5
【输出样例2】
6
010001
【原题链接】
https://acm.zstu.edu.cn/problem.php?id=4881
☘️ 题解分析
🧑🏻💻 C++ 代码