打的数据1和2,只有10分求助,手机打的不好调,麻烦了
查看原帖
打的数据1和2,只有10分求助,手机打的不好调,麻烦了
567570
xiaoshi_dada楼主2022/10/29 21:36
#include<bits/stdc++.h>

using namespace std;

const int MAXN=10005;

long long a[MAXN],b[MAXN],ans;

int main()

{

    int n,m,q;

	  cin>>n>>m>>q;	

    for(int i=1;i<=n;i++)	

    {	

	      cin>>a[i];

	  }		

    for(int i=1;i<=m;i++)	

    {	

	      cin>>b[i];

	  }	

    int l1,r1,l2,r2;	

    while(q--)	

    {		

         cin>>l1>>r1>>l2>>r2;		

         if(l1==r1)	

	       {		

              ans=0x3f3f3f3f;		

	            for(int i=l2;i<=r2;i++)			

              {		 

		              ans=min(ans,a[l1]*b[i]);		

	            }		

	            cout<<ans<<endl;		

	            continue;	

	       }	

	       else if(l2==r2)	

	       {		

	            ans=0-0x3f3f3f3f;	

		          for(int i=l1;i<=r1;i++)		

	            {			

	               ans=max(ans,b[l2]*a[i]);		

	            }			

              cout<<ans<<endl;		

	            continue;			

         }		

         else	

	       {		

	         long long ans2=0x3f3f3f3f;		

	         long long ans1=0-0x3f3f3f3f;	

		       for(int i=l1;i<=r1;i++)		

         	 {		

		            ans1=max(ans1,a[i]);		

	         }			

           for(int i=l2;i<=r2;i++)			

           {				

                ans2=min(ans2,b[i]);		

	         }			

           cout<<ans1*ans2<<endl;		

      }

	}	

return 0;

}

2022/10/29 21:36
加载中...