Box UVA - 1587
阿新 • • 發佈:2018-11-06
#include <iostream> #include <algorithm> using namespace std; struct pairs{ int w, h; }array[6]; bool cmp(pairs a,pairs b){ if (a.w != b.w) return a.w < b.w; else return a.h > b.h; } int main(){ int w, h, flag = 1; while(!(cin >> array[0].w >> array[0].h).eof()){ if(array[0].w > array[0].h) swap(array[0].w,array[0].h); for(int i=1 ;i<6 ;i++){ cin >> array[i].w >> array[i].h; if(array[i].w > array[i].h) swap(array[i].w,array[i].h); } sort(begin(array),end(array),cmp); if(array[0].w != array[1].w || array[2].w != array[3].w || array[4].w != array[5].w || array[0].h != array[1].h || array[2].h != array[3].h || array[4].h != array[5].h) flag = 0; // 看看是否是三組相同資料 if(array[0].w != array[2].w || array[0].h != array[4].h || array[2].h != array[4].w) flag = 0; // 排列後第一組資料的長和第三組的長相同,第一組的寬和第五組的寬相同,第三組的寬和第五組的長相同 if(flag) cout << "POSSIBLE" << endl; else cout << "IMPOSSIBLE" << endl; flag = 1; } return 0; }