「RiOI-2」tnelat

Luogu
IDLGP9500
Time1500ms
Memory512MB
DifficultyP6
洛谷原创Special JudgeO2优化构造洛谷月赛
对于一个长度为 $n$ 的**由数字组成的**字符串 $s=s_1s_2s_3\cdots s_n$,定义它的权值为 $f(s)=\sum\limits_{i=1}^n 10^{n-i}s_i$。(也就是它代表的十进制数)定义它的反串为 $\overline s=s_ns_{n-1}s_{n-2}\cdots s_1$。例如,$s=\texttt{0321}$ 的权值为 $f(s)=321$,反串为 $\overline s=\texttt{1230}$。 试构造一个字符串 $s$,使得 $|s|\le 114514$,且 $f(s)\equiv a\pmod {998,\!244,\!353}$ 且 $f(\overline s)\equiv b\pmod{998,\!244,\!353}$。如果 $c=0$,你还要保证 $s_1\neq \texttt0$ 且 $s_n\neq \texttt 0$。 如果无解,仅输出整数 $-1$ 即可。 ## Input **本题有多组数据。** 第一行一个正整数 $T$ 表示数据组数。 第二行一个整数 $c$,意义如题目所述。 接下来 $T$ 行,每行两个以空格隔开的自然数 $a, b$ 描述一组数据。 ## Output 输出 $T$ 行,每行一个正整数表示你构造的数。 **本题开启 Special Judge,只要你的输出符合要求即可得到该测试点的分数。** [samples] ## Background 小 E 是一名一年级的小学生。她正在学习如何阅读。 如果在纸上写上 $998,\!244,\!353$,那么她就会读「三——五三四四——二八九九。」是的,她是从右往左读的。然后,她会把这个数理解为 $353,\!442,\!899$。 不过这并不影响她交流——她只是不会读纸上的文字罢了。唯一的问题是,她现在要学习带余除法了,而老师说不定会在纸上画一些红色的叉叉。不过,那又如何? ## Note ### 样例解释 对于第一组样例的第一组数据,$s=\overline{s}=\texttt{1000000001}$,$f(s)=f(\overline s)=1{,}000{,}000{,}001\equiv 1{,}755{,}648\pmod{998,\!244,\!353}$,所以它是一个可行解。 ### 数据规模与约定 **本题开启捆绑测试。** | $\text{Subtask}$ | 分值 | $a,b$ | 特殊性质 | | :--------------: | :--: | :---: | :------: | | $0$ | $5$ | $ \in [1, 9]$ | $a = b$ | | $1$ | $10$ | $ \in [0, 9]$ | / | | $2$ | $15$ | $ \in [0, 99]$ | / | | $3$ | $25$ | / | $a = 0$ | | $4$ | $25$ | / | $c = 1$ | | $5$ | $20$ | / | / | 上表中的斜杠表示无特殊限制。 对于 $100\%$ 的数据,$1\leq T\leq 30$,$c\in\{0,1\}$,$0 \leq a, b \lt 998{,}244{,}353$。
Samples
Input #1
4
0
1755648 1755648
0 353442899
35281 18253
99728538 70320626
Output #1
1000000001
998244353
35281
66330831785160880538172878128228067748679057340064161580956433229228884846388176250309226257600174873157935217529307119972759542770571505108922703815887608877795159689067116959276902444827654683066165
Input #2
1
1
30 30
Output #2
030
Input #3
5
0
114514191 214748364
414414414 515515515
302813344 124821394
123456789 987654321
307210721 127012703
Output #3
4509169566936302030543528193
6765800751328156020889260421
6754420765703935546785979321
4408846009459835952892074437
3108033793065515131695113495
API Response (JSON)
{
  "problem": {
    "name": "「RiOI-2」tnelat",
    "description": {
      "content": "对于一个长度为 $n$ 的**由数字组成的**字符串 $s=s_1s_2s_3\\cdots s_n$,定义它的权值为 $f(s)=\\sum\\limits_{i=1}^n 10^{n-i}s_i$。(也就是它代表的十进制数)定义它的反串为 $\\overline s=s_ns_{n-1}s_{n-2}\\cdots s_1$。例如,$s=\\texttt{0321}$ 的权值为 $f(s)=321$,反串",
      "description_type": "Markdown"
    },
    "platform": "Luogu",
    "limit": {
      "time_limit": 1500,
      "memory_limit": 524288
    },
    "difficulty": {
      "LuoguStyle": "P6"
    },
    "is_remote": true,
    "is_sync": true,
    "sync_url": null,
    "sign": "LGP9500"
  },
  "statements": [
    {
      "statement_type": "Markdown",
      "content": "对于一个长度为 $n$ 的**由数字组成的**字符串 $s=s_1s_2s_3\\cdots s_n$,定义它的权值为 $f(s)=\\sum\\limits_{i=1}^n 10^{n-i}s_i$。(也就是它代表的十进制数)定义它的反串为 $\\overline s=s_ns_{n-1}s_{n-2}\\cdots s_1$。例如,$s=\\texttt{0321}$ 的权值为 $f(s)=321$,反串...",
      "is_translate": false,
      "language": "English"
    }
  ]
}
Full JSON Raw Segments