我出了一道题,输入只有一个数 d,数据范围为:
对于 10% 的数据,0≤d≤100。
对于 20% 的数据,0≤d≤5×103。
对于 40% 的数据,0≤d≤106。
对于 100% 的数据,0≤d≤109。
然后,我敲了一个 O(d) 的 40 分(0≤d≤106)解,然后?然后,全过?!我的数据达到了标准,最后一个点 d=999887723 (≈9.9⋅108)。这玩意 O(d) 跑 554ms?
更加离谱的是,我又敲了一个 O(d2) 的 20 分(0≤d≤5×103)解。然后?然后,它直接过前 3 个点!也就是 O(d2) 过 106?准确来说是过 d=826794。
这是什么原因?我应该如何调试时间限制?