F.A.Q
Hand In Hand
Online Acmers
Problem Archive
Realtime Judge Status
Authors Ranklist
 
     C/C++/Java Exams     
ACM Steps
Go to Job
Contest LiveCast
ICPC@China
Best Coder beta
VIP | STD Contests
    DIY | Web-DIY beta
Author ID 
Password 
 Register new ID

View Compilation Error

0_0_20613314_6225.cpp:7:11: error: stray '#' in program
     b?a:b)#define min(a,b) (a<b?a:b)using namespace std;struct point {double x,y;};  struct point pnt[MAXN],ll[MAXN],rr[MAXN],center;   int N,M,l_pos,r_pos;  double ans,H;bool ne;  point bcenter(point pnt[], int n){       point p, s;       if(n==1)         return pnt[0];    if(n==2)    {        s.x=(pnt[0].x+pnt[1].x)/2;        s.y=(pnt[0].y+pnt[1].y)/2;        return s;    }    double tp, area = 0, tpx = 0, tpy = 0;       p.x = pnt[0].x; p.y = pnt[0].y;       for (int i = 1; i <= n; ++i)     {   // point: 0 ~ n-1           s.x = pnt[(i == n) ? 0 : i].x;           s.y = pnt[(i == n) ? 0 : i].y;           tp = (p.x * s.y - s.x * p.y); area += tp / 2;           tpx += (p.x + s.x) * tp; tpy += (p.y + s.y) * tp;           p.x = s.x; p.y = s.y;       }       s.x = tpx / (6 * area); s.y = tpy / (6 * area);       return s;   }  void Print(){    int i;    printf("-------------------------------------\n");    for(i=0;i<M;i++)        printf("%.2lf %.2lf\n",ll[i].x,ll[i].y);    for(i=0;i<N;i++)        printf("%.2lf %.2lf\n",rr[i].x,rr[i].y);    printf("-------------------------------------\n");}point get_point(point c,point a,point b){    point res;    double dx,dy;    dx=fabs(a.x-b.x);    dy=b.y-a.y;     res.y=c.y;    if(fabs(a.x-b.x)<=eps)        res.x=a.x;    else    {        if(a.x<b.x)            res.x=dx*(c.y-a.y)*1.0/dy+a.x;        else            res.x=a.x-dx*(c.y-a.y)*1.0/dy;    }    return res;}void ini(){    M=N=0;    l_pos=r_pos=0;    ans=H=0;    memset(pnt,0,sizeof(pnt));    memset(ll,0,sizeof(ll));    memset(rr,0,sizeof(rr));}void Init(){    int i;    ini();    scanf("%d%d",&M,&N);    for(i=0;i<M;i++)        scanf("%lf%lf",&ll[i].x,&ll[i].y);    for(i=0;i<N;i++)        scanf("%lf%lf",&rr[i].x,&rr[i].y);}bool Judge(point o){    if((o.x-ll[0].x>=eps)&&(rr[0].x-o.x>=eps))        return true;    return false;}bool fuck(double mid,int l_pos,int r_pos){    int i;    point temp,now1,now2;    temp.x=1;temp.y=mid;    int cnt=0;     if(fabs(ll[l_pos].y-rr[r_pos].y)<=eps)    {        for(i=l_pos;i>=0;i--)            pnt[cnt++]=ll[i];        for(i=0;i<=r_pos;i++)            pnt[cnt++]=rr[i];    }    else if(ll[l_pos].y<rr[r_pos].y)    {        now1=get_point(temp,ll[l_pos],ll[l_pos+1]);        now2=get_point(temp,rr[r_pos-1],rr[r_pos]);        pnt[cnt++]=now1;        for(i=l_pos;i>=0;i--)            pnt[cnt++]=ll[i];        for(i=0;i<r_pos;i++)            pnt[cnt++]=rr[i];        pnt[cnt++]=now2;    }    else    {        now1=get_point(temp,ll[l_pos-1],ll[l_pos]);        now2=get_point(temp,rr[r_pos],rr[r_pos+1]);        pnt[cnt++]=now1;        for(i=l_pos-1;i>=0;i--)            pnt[cnt++]=ll[i];        for(i=0;i<=r_pos;i++)            pnt[cnt++]=rr[i];        pnt[cnt++]=now2;     }    center=bcenter(pnt,cnt);    return Judge(center);} void Solve(){    ans=ll[0].y;;    double l,r,mid;    int i,cnt;    point now;    l_pos=r_pos=1;    while(true)    {        cnt=0;        if(l_pos==M||r_pos==N) break;        if(ll[l_pos].y<=rr[r_pos].y)        {            for(i=l_pos;i>=0;i--)                pnt[cnt++]=ll[i];            for(i=0;i<r_pos;i++)                pnt[cnt++]=rr[i];            now=get_point(ll[l_pos],rr[r_pos-1],rr[r_pos]);            pnt[cnt++]=now;            center=bcenter(pnt,cnt);             ne=Judge(center);            if(!ne)            {                 l=max(rr[r_pos-1].y,ll[l_pos-1].y);r=ll[l_pos].y;                while(fabs(l-r)>eps)                {                    mid=(l+r)/2.0;                    if(fuck(mid,l_pos,r_pos-1))                        l=mid;                    else                        r=mid;                }                ans=max(ans,l);                break;            }            else            {                ans=max(ans,ll[l_pos].y);                l_pos++;            }        }        else        {            now=get_point(rr[r_pos],ll[l_pos-1],ll[l_pos]);            pnt[cnt++]=now;             for(i=l_pos-1;i>=0;i--)                pnt[cnt++]=ll[i];            for(i=0;i<=r_pos;i++)                pnt[cnt++]=rr[i];            center=bcenter(pnt,cnt);            ne=Judge(center);            if(!ne)            {                l=max(ll[l_pos-1].y,rr[r_pos-1].y);r=rr[r_pos].y;                while(fabs(l-r)>eps)                {                    mid=(l+r)/2.0;                    if(fuck(mid,l_pos-1,r_pos))                        l=mid;                    else                        r=mid;                }                ans=max(ans,l);                break;            }            else            {                ans=max(ans,rr[r_pos].y);                r_pos++;            }        }    }    printf("%.3lf\n",ans);} int main(){    int T;    scanf("%d",&T);    while(T--)    {        Init();        Solve();    }    return 0;}
           ^
0_0_20613314_6225.cpp:6:21: error: stray '#' in program
     #define MAXN 300#define eps 1e-5#define max(a,b) (a>
                     ^
0_0_20613314_6225.cpp:7:103: note: in expansion of macro 'MAXN'
     b?a:b)#define min(a,b) (a<b?a:b)using namespace std;struct point {double x,y;};  struct point pnt[MAXN],ll[MAXN],rr[MAXN],center;   int N,M,l_pos,r_pos;  double ans,H;bool ne;  point bcenter(point pnt[], int n){       point p, s;       if(n==1)         return pnt[0];    if(n==2)    {        s.x=(pnt[0].x+pnt[1].x)/2;        s.y=(pnt[0].y+pnt[1].y)/2;        return s;    }    double tp, area = 0, tpx = 0, tpy = 0;       p.x = pnt[0].x; p.y = pnt[0].y;       for (int i = 1; i <= n; ++i)     {   // point: 0 ~ n-1           s.x = pnt[(i == n) ? 0 : i].x;           s.y = pnt[(i == n) ? 0 : i].y;           tp = (p.x * s.y - s.x * p.y); area += tp / 2;           tpx += (p.x + s.x) * tp; tpy += (p.y + s.y) * tp;           p.x = s.x; p.y = s.y;       }       s.x = tpx / (6 * area); s.y = tpy / (6 * area);       return s;   }  void Print(){    int i;    printf("-------------------------------------\n");    for(i=0;i<M;i++)        printf("%.2lf %.2lf\n",ll[i].x,ll[i].y);    for(i=0;i<N;i++)        printf("%.2lf %.2lf\n",rr[i].x,rr[i].y);    printf("-------------------------------------\n");}point get_point(point c,point a,point b){    point res;    double dx,dy;    dx=fabs(a.x-b.x);    dy=b.y-a.y;     res.y=c.y;    if(fabs(a.x-b.x)<=eps)        res.x=a.x;    else    {        if(a.x<b.x)            res.x=dx*(c.y-a.y)*1.0/dy+a.x;        else            res.x=a.x-dx*(c.y-a.y)*1.0/dy;    }    return res;}void ini(){    M=N=0;    l_pos=r_pos=0;    ans=H=0;    memset(pnt,0,sizeof(pnt));    memset(ll,0,sizeof(ll));    memset(rr,0,sizeof(rr));}void Init(){    int i;    ini();    scanf("%d%d",&M,&N);    for(i=0;i<M;i++)        scanf("%lf%lf",&ll[i].x,&ll[i].y);    for(i=0;i<N;i++)        scanf("%lf%lf",&rr[i].x,&rr[i].y);}bool Judge(point o){    if((o.x-ll[0].x>=eps)&&(rr[0].x-o.x>=eps))        return true;    return false;}bool fuck(double mid,int l_pos,int r_pos){    int i;    point temp,now1,now2;    temp.x=1;temp.y=mid;    int cnt=0;     if(fabs(ll[l_pos].y-rr[r_pos].y)<=eps)    {        for(i=l_pos;i>=0;i--)            pnt[cnt++]=ll[i];        for(i=0;i<=r_pos;i++)            pnt[cnt++]=rr[i];    }    else if(ll[l_pos].y<rr[r_pos].y)    {        now1=get_point(temp,ll[l_pos],ll[l_pos+1]);        now2=get_point(temp,rr[r_pos-1],rr[r_pos]);        pnt[cnt++]=now1;        for(i=l_pos;i>=0;i--)            pnt[cnt++]=ll[i];        for(i=0;i<r_pos;i++)            pnt[cnt++]=rr[i];        pnt[cnt++]=now2;    }    else    {        now1=get_point(temp,ll[l_pos-1],ll[l_pos]);        now2=get_point(temp,rr[r_pos],rr[r_pos+1]);        pnt[cnt++]=now1;        for(i=l_pos-1;i>=0;i--)            pnt[cnt++]=ll[i];        for(i=0;i<=r_pos;i++)            pnt[cnt++]=rr[i];        pnt[cnt++]=now2;     }    center=bcenter(pnt,cnt);    return Judge(center);} void Solve(){    ans=ll[0].y;;    double l,r,mid;    int i,cnt;    point now;    l_pos=r_pos=1;    while(true)    {        cnt=0;        if(l_pos==M||r_pos==N) break;        if(ll[l_pos].y<=rr[r_pos].y)        {            for(i=l_pos;i>=0;i--)                pnt[cnt++]=ll[i];            for(i=0;i<r_pos;i++)                pnt[cnt++]=rr[i];            now=get_point(ll[l_pos],rr[r_pos-1],rr[r_pos]);            pnt[cnt++]=now;            center=bcenter(pnt,cnt);             ne=Judge(center);            if(!ne)            {                 l=max(rr[r_pos-1].y,ll[l_pos-1].y);r=ll[l_pos].y;                while(fabs(l-r)>eps)                {                    mid=(l+r)/2.0;                    if(fuck(mid,l_pos,r_pos-1))                        l=mid;                    else                        r=mid;                }                ans=max(ans,l);                break;            }            else            {                ans=max(ans,ll[l_pos].y);                l_pos++;            }        }        else        {            now=get_point(rr[r_pos],ll[l_pos-1],ll[l_pos]);            pnt[cnt++]=now;             for(i=l_pos-1;i>=0;i--)                pnt[cnt++]=ll[i];            for(i=0;i<=r_pos;i++)                pnt[cnt++]=rr[i];            center=bcenter(pnt,cnt);            ne=Judge(center);            if(!ne)            {                l=max(ll[l_pos-1].y,rr[r_pos-1].y);r=rr[r_pos].y;                while(fabs(l-r)>eps)                {                    mid=(l+r)/2.0;                    if(fuck(mid,l_pos-1,r_pos))                        l=mid;                    else                        r=mid;                }                ans=max(ans,l);                break;            }            else            {                ans=max(ans,rr[r_pos].y);                r_pos++;            }        }    }    printf("%.3lf\n",ans);} int main(){    int T;    scanf("%d",&T);    while(T--)    {        Init();        Solve();    }    return 0;}
                                                                                                       ^
0_0_20613314_6225.cpp:6:37: error: stray '#' in program
     #define MAXN 300#define eps 1e-5#define max(a,b) (a>
                                     ^
0_0_20613314_6225.cpp:7:103: note: in expansion of macro 'MAXN'
     b?a:b)#define min(a,b) (a<b?a:b)using namespace std;struct point {double x,y;};  struct 


Hangzhou Dianzi University Online Judge 3.0
Copyright © 2005-2025 HDU ACM Team. All Rights Reserved.
Designer & Developer : Wang Rongtao LinLe GaoJie GanLu
Total 0.000000(s) query 1, Server time : 2025-02-17 12:35:04, Gzip enabled