其实我觉得怎么看都是高精度吧

看了一下,其实正解,这个应该是个数学问题,做法是找到字符串中包含的数字是哪个。然后再算出前面多少个数然后算出结果。
时间复杂度是O(n^3),n为字符串的长度,但是计算的复杂度远超过找答案的复杂度了。

但看了一下题解和其他讨论,似乎一个32位的int就足够存储答案了,对于用KMP算法来做这个,对于位数少是可以暴力做一个超长的字符串序列,然后走一边算法。但,对于一个写了200个9的输入数据,对应的数字是10^101-1,你告诉我这个结果用int能存吗?单纯这个数字就已经超过32位可以存储的大小了。所以我觉得题目作者应该补充一个,所有输出结果在2^32-1以内。不然KMP?即便只是个O(M * N)的复杂度,对于M这种天文数字,还是该呵呵就呵呵吧。

0 条评论

目前还没有评论...

信息

ID
1005
难度
8
分类
字符串 | KMP 点击显示
标签
(无)
递交数
6613
已通过
623
通过率
9%
被复制
30
上传者