【小技巧】卡时
这个东西比较神秘,其实正经用处是没有的(
通常是用来优化一些爆搜或者乱搞代码的。
比如要寻找一些东西,如果没有判断无解,可以发现在无解的情况下,爆搜是会跑满的。
但这十分的不优,而且也并没有这么多的时间。
所以我们完全可以面向时限编程,可以发现当程序跑了很长时间却还没有找到合法答案时,大概率是无解的。
所以我们完全可以设置一个实现的时间阈值,当时间超过这个阈值时,就判断无解。
实践证明,这个神秘科技在 紫紫紫黑 的模拟赛中非常有用(
基本模板(A+B problem魔改了一下):
#include <bits/stdc++.h>
#define int long long
#define ull unsigned long long
#define inf 1e18
#define eps 1e-9
#define il inline
#define ls 2*k
#define rs 2*k+1
using namespace std;
const int N=1e5+10,M=1e6+10;
const int mod=998244353;
const int dx[4]={0,0,1,-1},dy[4]={1,-1,0,0};
int a,b;
int start_time;
signed main(){
ios::sync_with_stdio(0);
cin.tie(0); cout.tie(0);
int start_time=clock();
cin>>a>>b;
for(int i=1;;i++){
if(clock()-start_time>=CLOCKS_PER_SEC*0.95){
cout<<a+b<<"\n";
exit(0);
}
}
return 0;
}

浙公网安备 33010602011771号