调不动了,dalao帮一下
  • 板块题目总版
  • 楼主sszyyds
  • 当前回复2
  • 已保存回复2
  • 发布时间2023/8/29 23:52
  • 上次更新2023/11/3 00:24:50
查看原帖
调不动了,dalao帮一下
1018064
sszyyds楼主2023/8/29 23:52

全部WA 这是代码

#include<iostream>
#include<cstdio>
#include<cmath>
#include<queue>
#include<ctime>
#include<map>
#include<stack>
#include<string>
#include<cstdlib>
#include<cstring>
#include<algorithm>
#define maxn 100005
#define maxt 1000005
#define INF 1e9+7
#define int long long
using namespace std;

int read()
{
	int f=1,x=0;
	char ch=getchar();
	while(!isdigit(ch)) 
	{ 
	   if(ch=='-') 
	     f=-1;
	   ch=getchar();
	}
	while(isdigit(ch))
	{
	   x=x*10+ch-'0';
	   ch=getchar();
	} 
	return f*x;
}

int n,m;
int fx[maxt];
int fy[maxt];//差分
int xx[maxt];
int yy[maxt];

int max(int x,int y)
{
   return x<y?y:x;
}

int min(int x,int y)
{
   return x>y?y:x;
}

signed main()
{
    n=read();
	for(int i=1;i<=n;i++)
	{
	   int mxx=-INF,mnx=INF;
	   int mxy=-INF,mny=INF;
	   for(int j=1;j<=3;j++)
	   {
	      int x,y;
		  x=read();
		  y=read();
		  mxx=max(mxx,x);
		  mnx=min(mnx,x);
		  mxy=max(mxy,y);
		  mny=min(mny,y);
	   }
	   fx[mnx+1]++;
	   fy[mny+1]++;
	   fx[mxx]--;
	   fy[mxy]--;
	}
	xx[0]=fx[0];
	yy[0]=fy[0];
	for(int i=1;i<=maxt;i++)
	   xx[i]=xx[i-1]+fx[i];
	for(int i=1;i<=maxt;i++)
	   yy[i]=yy[i-1]+fy[i];
	m=read();
	for(int i=1;i<=m;i++)
	{
	   char s1,s2;
	   int num;
	   scanf("%c %c %lld\n",&s1,&s2,&num);
	   if(s1=='x')
	     printf("%lld\n",xx[num]);
	   else
	   if(s1=='y')
	     printf("%lld\n",yy[num]);
	}
	return 0;
}


2023/8/29 23:52
加载中...