给定6个矩形的长和宽wi和hi(1<=wi,hi<=1000),判断它们能否构成长方体的6个面
#include<bits/stdc++.h>
using namespace std;
#define int long long
void solve(){
map<pair<int,int>,int>m;
set<int>s;
for(int i=0,w,h;i<6;i++){
cin>>w>>h;
m[{w,h}]++;
s.insert(w);
s.insert(h);
}
for(auto x:m){
if(x.second&1){
cout<<"NO"<<endl;
return ;
}
}
if(s.size()>3){
cout<<"NO";
return ;
}
cout<<"YES"<<endl;
}
signed main(){
solve();
}
六个矩形能构成长方体的一个充分必要条件是:能分为三对矩形(每对矩形内部相等,不同对之间可以相等),且所有的边(长和宽)的种类不超过3种。