长方体的判断,不难。



#include<stdio.h>
int w[7],h[7];
int min(int str1[],int str2[])
{
    int i,temp;
    for(i=0; i<6; i++)
    {
        if(str1[i]>str2[i])
        {
            temp=str1[i];
            str1[i]=str2[i];
            str2[i]=temp;
        }
    }
}
int sort(int str1[],int str2[])
{
    int i,j,temp;
    for(i=1; i<6; i++)
        for(j=0; j<i; j++)
        {
            if(str1[j]>str1[i])
            {
                temp=str1[i];
                str1[i]=str1[j];
                str1[j]=temp;
                temp=str2[i];
                str2[i]=str2[j];
                str2[j]=temp;
            }
            if(str2[j]>str2[i])
            {
                temp=str2[i];
                str2[i]=str2[j];
                str2[j]=temp;
                temp=str1[i];
                str1[i]=str1[j];
                str1[j]=temp;
            }
        }
}
int main()
{
    int i;
    while (scanf("%d%d",&w[0],&h[0])!=EOF)
    {
        int a=0,b=0,c=0,d=0,q;
        for(i=1; i<6; i++)
            scanf("%d%d",&w[i],&h[i]);
        min(w,h);
        sort(w,h);
        for(i=0; i<5; i+=2)
        {
            if(w[i]==w[i+1]&&h[i]==h[i+1])
                q=1;
            else
            {
                q=0;
                break;
            }
        }
        if(q)
        {
            if(w[0]==w[2]&&h[2]==h[4]&&h[0]==w[4])
                q=1;
            else
                q=0;
        }
        if(q)
            printf("POSSIBLE\n");
        else
            printf("IMPOSSIBLE\n");
    }
    return 0;
}