CF1268A Long Beautiful Integer

题目描述

给定一个由 $a_1, a_2, \ldots, a_n$ 从左到右构成的整数 $x$ 和一个正整数 $k$。 若由 $b_1, b_2, \ldots, b_m$ 从左到右构成的整数满足 $\forall i \in [1,m-k], b_i=b_{i+k}$,则称其为美丽数。 请求出最小的由 $b_1, b_2, \ldots, b_m$ 从左到右构成的美丽数 $y$,满足 $y \geq x$。

输入格式

第一行两个整数 $n,k$,其中 $n$ 表示 $x$ 的位数,$k$ 的含义如题所述。 下一行包含由 $a_1, a_2, \ldots, a_n$ 从左到右构成的 $n$ 位整数 $x$,数据保证不包含前导零。

输出格式

第一行输出一个整数 $m$,表示答案 $y$ 的位数。 下一行输出由 $b_1, b_2, \ldots, b_m$ 从左到右构成的 $m$ 位整数 $y$,不包含前导零。

说明/提示

$2 \leq n \leq 2 \times 10^5$,$1 \leq k \leq n$。