码迷,mamicode.com
首页 > 其他好文 > 详细

uva10763

时间:2017-11-08 17:52:31      阅读:156      评论:0      收藏:0      [点我收藏+]

标签:void   using   mes   自己   技术分享   映射   ack   width   bsp   

技术分享

技术分享

技术分享

//附上自己被碾压的代码

#include <cstdio>
#include <set>
#include <map>
#include <vector>
using namespace std;
map <pair<int, int>, int> Map;//从pair映射到每一个pair的数量
vector <pair<int, int>> Pa;//存储不重复pair
int main(void)
{
 int n;
 while (~scanf("%d", &n)&&n)
 {
  Map.clear(), Pa.clear();
  bool flag = 0;
  int kases = 0;
  for (int i = 0;i < n;i++)
  {
   int a, b;
   pair<int, int>p1;
   scanf(" %d %d", &a, &b);
   p1.first = a, p1.second = b;
   if(!Map.count(p1))
   {
    Pa.push_back(p1);
    Map[p1] = 1;
    kases++;
   }
   else Map[p1]++;
  }
  if(n%2==1) { printf("NO\n");continue; }
  for (int i = 0;i < kases;i++)
  {
   pair<int, int>p1,p2 = Pa[i];
   p1.first = p2.second, p1.second = p2.first;
   if (Map[p1]!=Map[p2]) { flag = 1;break; }//正反pair必须数量相等
  }
  if (flag == 1) { printf("NO\n");continue; }
  else printf("YES\n");
 }
 return 0;
}

 

uva10763

标签:void   using   mes   自己   技术分享   映射   ack   width   bsp   

原文地址:http://www.cnblogs.com/schsb/p/7804470.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!