60分以后全部TLE 代码如下:
#include<bits/stdc++.h>
using namespace std;
long long n,m,q,r1,r2,l1,l2;
long long a[100010],b[100010],ans[100010],ans1,ans2,k1=1,k2,max1,max2,k3;
int main(){
cin>>n>>m>>q;
for(long long i=1;i<=n;i++){
cin>>a[i];
}
for(long long i=1;i<=m;i++){
cin>>b[i];
}
for(long long i=1;i<=q;i++){
k2=0;
k1=1;
ans1=-10000000000000000000010;
ans2=-10000000000000000000010;
max1=10000000000000000000010;
max2=10000000000000000000010;
cin>>l1>>r1>>l2>>r2;
for(long long j=l1;j<=r1;j++){
max1=10000000000000000000010;
max2=10000000000000000000010;
k1=1;
k3=1;
for(long long h=l2;h<=r2;h++){
if(a[j]*b[h]<0&&k3){
k2++;
k1=0;
k3=0;
}
if(a[j]*b[h]>=0){
max1=min(max1,a[j]*b[h]);
}
else{
max2=min(max2,a[j]*b[h]);
}
}
if(ans1<max1&&k1&&max1!=10000000000000000000010){
ans1=max1;
}
if(ans2<max2&&max2!=10000000000000000000010){
ans2=max2;
}
}
if(k2==r1-l1+1){
ans[i]=ans2;
}
else{
ans[i]=ans1;
}
}
for(long long i=1;i<=q;i++){
cout<<ans[i]<<endl;
}
}