1 条题解

  • 0
    @ 2025-4-7 21:41:58

    C :

    #include<stdio.h>
    struct s
    {
        int x1,y1,x2,y2,r,g,b;
    } s[1010];
    int main()
    {
        int x,y,a,b,i;
        while(scanf("%d%d",&x,&y)&&(x != 0 || y != 0))
        {
            for(i=1; i<=x; i++)
                scanf("%d %d %d %d %d %d %d",&s[i].x1,&s[i].y1,&s[i].x2,&s[i].y2,&s[i].r,&s[i].g,&s[i].b);
            for(int j=1; j<=y; j++)
            {
                scanf("%d %d",&a,&b);
                for(i = x;i > 0; i--)
                {
                    if((a >= s[i].x1 && a <= s[i].x2) && (b >= s[i].y1 && b <= s[i].y2))
                    {
                        printf("%d %d %d\n",s[i].r,s[i].g,s[i].b);
                        break;
                    }
                    else continue;
                }
                if(i==0) printf("255 255 255\n");
            }
        }
        return 0;
    }
    
    
    
    
    
    

    C++ :

    #include<stdio.h>
    struct RGB
    {  int x1,y1,x2,y2,r,g,b;
    } a[1000];
    int main()
    {
        int n,m,x,i,y;
        while(scanf("%d%d",&n,&m)==2)
        {
            if(n==0&&m==0)
                break;
            for(i=0; i<n; i++)
                scanf("%d%d%d%d%d%d%d",&a[i].x1,&a[i].y1,&a[i].x2,&a[i].y2,&a[i].r,&a[i].g,&a[i].b);
           while(m--)
            {
                scanf("%d%d",&x,&y);
                int flag=0;
                for(i=n-1; i>=0; i--)
                    if(x>=a[i].x1&&x<=a[i].x2&&y>=a[i].y1&&y<=a[i].y2)
                    {   flag++;
                        printf("%d %d %d\n",a[i].r,a[i].g,a[i].b);
                        break;
                    }
                    if(!flag)
                        printf("255 255 255\n");
    
            }
    
        }
    return 0;
    
    }
    
    

    信息

    ID
    2156
    时间
    1000ms
    内存
    128MiB
    难度
    (无)
    标签
    递交数
    0
    已通过
    0
    上传者