七等分正方形,四笔串连3×3的点阵,12根火柴棍摆出面积为1的封闭图形,这些题目见多了,再整人已经没用了。今天我第一次自己想了一个好玩的这类题目。
有个OI题(http://www.vijos.cn/Problem_Show.asp?id=1005)的大意是,给你一个不超过200位的字符串,请问它第一次出现在串"1234567891011121314…"的什么位置。这道题可以用O(n^3)的枚举AC。
今天和arthas聊天时突然想到一个问题,使得输出结果最大的字符串(最坏情况下的输入数据)是什么样的。
你的答案是什么?想好答案前请先别往下看。
我起初以为是9999999…,但是9999999….可以从中间分开来。比如,六个数字9有可能出现在899999,900000中。我开始怀疑,是否所有的串都可以像这样分开来。
后来我想到是900000000…,这样就不能从中间分开来了(否则有前导0)。然而这仍然不是最坏的情况。
很少有人想到正确答案吧:0000000000…. (200个0)这个答案显然是正确的。我也是后来才突然想到,因为我们忽略了输入是字符串,习惯性地以为输入数据是一个数,而且这个数越大越好。