说过了最主要在讨论的不是做法,而是楼主的态度
1 个赞
随机化做法也是一种做法,发一篇题解是没有问题的,只是楼主态度不对。
4 个赞
是不妥,这里应该讨论题目,请你们把这道题目的卡打出来。
2 个赞
这个态度不就和开题解然后说题目简单一样吗/cf
- 楼主态度问题,值得我们谴责。
- 你们强词夺理,这也并不合理。
3 个赞
卡假做法算强词夺理吗。
我承认目前我卡不掉但是你就能承认他对了吗
那卡不掉但是复杂度不对的题解你们就忍受不了了?????
1 个赞
难道他们指出错误不对吗?
找出来个类似的,快来卡
#include<bits/stdc++.h>
#define ll long long
#define N 200005
using namespace std;
int n,lg[N];
int dp_a[N][25],dp_b[N][25];
ll ans=0;
int query_a(int l,int r){
int k=lg[r-l+1];
return min(dp_a[l][k],dp_a[r-(1<<k)+1][k]);
}
int query_b(int l,int r){
int k=lg[r-l+1];
return min(dp_b[l][k],dp_b[r-(1<<k)+1][k]);
}
vector<int> v;
int main(){
cin>>n;
for(int i=1;i<=n;i++){
scanf("%d%d",&dp_a[i][0],&dp_b[i][0]);
v.push_back(i);
}
for(int i=2;i<=n;i++){
lg[i]=lg[i>>1]+1;
}
for(int i=1;i<21;i++){
for(int j=1;j+(1<<i)-1<=n;j++){
dp_a[j][i]=min(dp_a[j][i-1],dp_a[j+(1<<i-1)][i-1]);
dp_b[j][i]=min(dp_b[j][i-1],dp_b[j+(1<<i-1)][i-1]);
}
}
random_shuffle(v.begin(),v.end());
for(auto i:v){
for(ll j=i;j<=n;j++){
ll x=1ll*query_a(i,j)*query_b(i,j);
ans=max(ans,x*(j-i+1));
j=(ans/x)+i-1;
}
}
cout<<ans;
return 0;
}
@linan024
你无法说明他的错误性, 也无法说明它的正确性, 大概率能行,考场上就可以试一试,
1 个赞
我说
“我要对着这个卡”
表现出来我忍受不了吗。我忍受不了的是他们的态度还有说什么“不TLE就是对的”的逆天言论。
那你还指责楼主人品呢,你看你这个脏话,你觉得你这样很有意思吗
2 个赞
考场上可以试试只是一种策略罢了,但理论上是可以卡的
1 个赞
但是,世界上只有AC,WA,TLE,RE,(其他忽略不计)这四个状态,证明了正确性,又不会RE,你说他不T不就是AC吗
2 个赞
AC 不等价于正确。
2 个赞
态度不妥,是有问题,但是你指出来之后自己开始骂脏话,这确实是没文化的体现。
2 个赞
- 楼主态度问题,值得我们谴责。
- 你们强词夺理,这也并不合理。
- 复杂度不正确,这个我们承认。
- 此贴到此结束,其余没有意义。
1 个赞
可是,你自己也表明了,非正解,那只能说数据比较水,稍微严一点都可以卡掉,非正解你发什么题解啊
1 个赞
什么【强词夺理】大佬/bx/bx/bx/bx
2 个赞
是楼主先骂,但先后无关,骂了就是不应该。
3 个赞