#include <stdio.h>
#include <string.h>
int main()
{
int i,j,l,n,ans,kase,flag=0,num,k;
int a[6][3];
memset(a,0,sizeof(a));
while(~scanf("%d",&a[0][0]))
{
scanf("%d",&a[0][1]);
int num=1;
if(a[0][0]>a[0][1]) {int t=a[0][0];a[0][0]=a[0][1];a[0][1]=t;}
for(i=1;i<6;i++)
{
scanf("%d%d",&a[i][0],&a[i][1]);
if(a[i][0]>a[i][1]) {int t=a[i][0];a[i][0]=a[i][1];a[i][1]=t;}
}
for(i=0;i<6;i++)
for(j=0;j<5-i;j++)
{
if(a[j][0]>a[j+1][0])
{
int t=a[j][0];
a[j][0]=a[j+1][0];
a[j+1][0]=t;
t=a[j][1];
a[j][1]=a[j+1][1];
a[j+1][1]=t;
}
if(a[j][0]==a[j+1][0]&&a[j][1]>a[j+1][1])
{
int t=a[j][1];
a[j][1]=a[j+1][1];
a[j+1][1]=t;
}
}
if((a[0][0]==a[1][0])&&(a[0][1]==a[1][1])&&(a[2][0]==a[3][0])&&(a[2][1]==a[3][1])&&(a[4][0]==a[5][0])&&(a[4][1]==a[5][1]))
{
if(((a[0][0]==a[2][0])&&(a[2][1]==a[4][1])&&(a[4][0]==a[0][1]))||((a[0][1]==a[2][1])&&(a[2][0]==a[4][0])&&(a[4][1]==a[0][0])))
{
printf("POSSIBLE\n");
num=0;
}
}
if(num) printf("IMPOSSIBLE\n");
}
return 0;
#include <string.h>
int main()
{
int i,j,l,n,ans,kase,flag=0,num,k;
int a[6][3];
memset(a,0,sizeof(a));
while(~scanf("%d",&a[0][0]))
{
scanf("%d",&a[0][1]);
int num=1;
if(a[0][0]>a[0][1]) {int t=a[0][0];a[0][0]=a[0][1];a[0][1]=t;}
for(i=1;i<6;i++)
{
scanf("%d%d",&a[i][0],&a[i][1]);
if(a[i][0]>a[i][1]) {int t=a[i][0];a[i][0]=a[i][1];a[i][1]=t;}
}
for(i=0;i<6;i++)
for(j=0;j<5-i;j++)
{
if(a[j][0]>a[j+1][0])
{
int t=a[j][0];
a[j][0]=a[j+1][0];
a[j+1][0]=t;
t=a[j][1];
a[j][1]=a[j+1][1];
a[j+1][1]=t;
}
if(a[j][0]==a[j+1][0]&&a[j][1]>a[j+1][1])
{
int t=a[j][1];
a[j][1]=a[j+1][1];
a[j+1][1]=t;
}
}
if((a[0][0]==a[1][0])&&(a[0][1]==a[1][1])&&(a[2][0]==a[3][0])&&(a[2][1]==a[3][1])&&(a[4][0]==a[5][0])&&(a[4][1]==a[5][1]))
{
if(((a[0][0]==a[2][0])&&(a[2][1]==a[4][1])&&(a[4][0]==a[0][1]))||((a[0][1]==a[2][1])&&(a[2][0]==a[4][0])&&(a[4][1]==a[0][0])))
{
printf("POSSIBLE\n");
num=0;
}
}
if(num) printf("IMPOSSIBLE\n");
}
return 0;
}
心得:完全靠自己的想法,虽然一次WA一次TLE,但还是很开心!!!