题目大意:输入六块木板的长宽,判断他们能否围成立方体。
解题思路:长方体的四条棱相等,判断是否有三组相同的数;特殊情况正方体则直接判断。
#include<iostream>
#include<cstring>
#include<stdio.h>
using namespace std;
int main() {
int i , j ,k , l , cub[6][2] ,count ,count2 , flag;
while( scanf("%d %d",&cub[0][0], &cub[0][1]) != EOF) {
for ( i = 1; i < 6;i++)
scanf("%d%d",&cub[i][0],&cub[i][1]);
count2 = 0;
for( i = 0; i < 6 ; i++ ) {
for ( k = 0; k < 2 ; k++){
count = 0;
for( j = 0; j < 6 ; j++ ) {
for( l = 0;l < 2 ; l++) {
if( i != j )
if( cub[i][k] == cub[j][l] ) { count++;break;}
}
}
if(count == 3) count2++;
if(count == 5 && cub[i][0] ==cub[i][1]) count2 = 12;
}
}
if( count2 == 12) cout << "POSSIBLE" <<endl;
else cout << "IMPOSSIBLE" << endl;
}
return 0;
}