AT_arc055_d.[ARC055D] 隠された等差数列
NOI/NOI+/CTSC
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Firmino 有一个正整数 d(长度为 N),我们将其十进制表示从左到右(从高位到低位)的各位依次记为 d0,d1,⋯,dN−1。
Firmino 说,这个整数背后隐藏着一个由非负整数组成的等差数列 {ai}。具体来说,取非负整数 A,B 和正整数 X,定义数列
ai={A,ai−1+Bi=0i>0
并且,这个数列满足:对于 i=0,1,⋯,N−1,ai 的十进制表示中(从右往左数的)第 X 位等于 di。形式化地,∀i∈[0,N−1],都有 di=⌊10x−1ai⌋mod10。例如,114 的第 1 位是 4,第 2 位和第 3 位都是 1。
Firmino 想问你,满足上述条件的等差数列中,首项(即 A)的最小值是多少。由于他在脑海中只用了不到 0.5s 就算出来了,所以他要求你在 5s 内完成计算。
如果不存在满足条件的等差数列,输出 -1。
输入格式
一行一个正整数 d。
输出格式
一行一个非负整数 A,表示满足条件的等差数列的首项最小值。
如果不存在满足条件的等差数列,输出 -1。
输入输出样例
输入#1
6925814703
输出#1
6
输入#2
6925814704
输出#2
61
输入#3
6925814705
输出#3
-1
输入#4
9
输出#4
9
说明/提示
样例 1 解释:取 A=6,B=3,X=1 满足条件。可以证明这是最小的首项。
样例 2 解释:取 A=61,B=31,X=2 满足条件。可以证明这是最小的首项。
对于 100% 的数据,保证 1≤N≤104,且 d 不含前导零。
Statement fixed by Starrykiller.
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?