搜索题解区发现,有四篇题解使用时间复杂度错误的方法:从总和/k开始向下枚举。
该方法实际上最坏可以卡到 O(KN),Hack生成器如下:
#include <iostream>
using namespace std;
int n=100000,k=100001;
int main()
{
printf("%d %d\n",n,k);
for(int i=1;i<=n;i++)
puts("100000000");
return 0;
}
卡掉的四篇题解名单如下:
https://www.luogu.com.cn/blog/LOLcy/solution-p2440
https://www.luogu.com.cn/blog/shenzuxin/solution-p2440
luogu.com.cn/blog/user9729/solution-p2440
https://www.luogu.com.cn/blog/dijiangbitan/p2440-mu-cai-jia-gong-ti-xie