标签:node names scanf std code main name == c++
题意是,选出三个,看看是否可以凑成一个新的矩形。
#include<bits/stdc++.h> using namespace std; struct node { int cnt[2]; }a[5]; bool Check(node x, node y, node z) { for(int i = 0; i < 2; i++) for(int j = 0; j < 2; j++) for(int k = 0; k < 2; k++) if(x.cnt[!i] == y.cnt[!j] && x.cnt[i] + y.cnt[j] == z.cnt[k]) //一大两小 return 1; //小的两边之和要等于大的一边,且两个小的另外一边要相等 else if(x.cnt[i] == y.cnt[j] && y.cnt[j] == z.cnt[k]) //三等分 return 1; return 0; } int main() { bool flag; int T; cin >> T; while(T--) { flag = 0; for(int i = 0; i < 4; i++) scanf("%d%d", &a[i].cnt[0], &a[i].cnt[1]); for(int i = 0; i < 4; i++) for(int j = 0; j < 4; j++) for(int k = 0; k < 4; k++) { if(i == j || j == k || i == k) //不取重复的矩形 continue; if(Check(a[i], a[j], a[k])) flag = 1; } if(flag) cout << "Yes" << endl; else cout << "No" << endl; } return 0; }
2015北京区域赛 Mysterious Antiques in Sackler Museum
标签:node names scanf std code main name == c++
原文地址:http://www.cnblogs.com/l609929321/p/7761900.html