zoukankan      html  css  js  c++  java
  • PAT 乙级 1065 单身狗 (25 分)

    1065 单身狗 (25 分)

    “单身狗”是中文对于单身人士的一种爱称。本题请你从上万人的大型派对中找出落单的客人,以便给予特殊关爱。

    输入格式:

    输入第一行给出一个正整数 N(≤ 50 000),是已知夫妻/伴侣的对数;随后 N 行,每行给出一对夫妻/伴侣——为方便起见,每人对应一个 ID 号,为 5 位数字(从 00000 到 99999),ID 间以空格分隔;之后给出一个正整数 M(≤ 10 000),为参加派对的总人数;随后一行给出这 M 位客人的 ID,以空格分隔。题目保证无人重婚或脚踩两条船。

    输出格式:

    首先第一行输出落单客人的总人数;随后第二行按 ID 递增顺序列出落单的客人。ID 间用 1 个空格分隔,行的首尾不得有多余空格。

    输入样例:

    3
    11111 22222
    33333 44444
    55555 66666
    7
    55555 44444 10000 88888 22222 11111 23333
    

    输出样例:

    5
    10000 23333 44444 55555 88888


    注意一点:输出时一定要把空格输出写在 cout<<setw<<setfill之前,否则会出现错误的输出

     1 #include<iostream>
     2 #include<iomanip>
     3 #include<set>
     4 
     5 using namespace std;
     6 
     7 int couple[100001];
     8 
     9 int main()
    10 {
    11     for (int i = 0; i<100000; ++i)
    12         couple[i] = 100000;
    13 
    14     int m, n, num, temp1, temp2;
    15     set<int> s;
    16 
    17     cin >> m;
    18 
    19     for (int i = 0; i<m; ++i)
    20     {
    21         cin >> temp1 >> temp2;
    22 
    23         couple[temp1] = temp2;
    24         couple[temp2] = temp1;
    25     }
    26 
    27     cin >> n;
    28 
    29     for (int i = 0; i<n; ++i)
    30     {
    31         cin >> num;
    32 
    33         if (s.find(couple[num]) != s.end())//find couple success
    34             s.erase(couple[num]);
    35         else
    36             s.insert(num);
    37     }
    38 
    39     cout << s.size() << endl;
    40 
    41     bool temp = true;
    42 
    43     if (s.size() != 0)
    44     {
    45         set<int>::iterator begin = s.begin(), end = s.end(), i;
    46 
    47         for (i = begin; i != end; ++i)
    48         {
    49             if (temp)
    50             {
    51                 cout << setw(5) << setfill('0') << *i;
    52                 temp = false;
    53             }
    54             else
    55                 cout << " " << setfill('0') << setw(5) << *i;
    56         }
    57     }
    58 }
  • 相关阅读:
    (转)C#调用默认浏览器打开网页的几种方法
    (链接)打印相关_.NET打印小资料
    (推荐)WPF动画教程
    (转)C# 打印PDF文件使用第三方DLL
    问题解决_(转载)在VisualStudio 2012上使用MVC3出现错误的解决办法
    分布式集群
    关于集群并发问题
    关于分布式事务的处理
    分布式与集群理解之部署结构
    分布式与集群理解
  • 原文地址:https://www.cnblogs.com/cdp1591652208/p/10216946.html
Copyright © 2011-2022 走看看