加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

1121 Damn Single (25 分)

发布时间:2020-12-14 02:00:03 所属栏目:Linux 来源:网络整理
导读:1121?Damn Single?(25 分) "Damn Single (单身狗)" is the Chinese nickname for someone who is being single. You are supposed to find those who are alone in a big party,so they can be taken care of. Input Specification: Each input file conta
1121?Damn Single?(25 分)

"Damn Single (单身狗)" is the Chinese nickname for someone who is being single. You are supposed to find those who are alone in a big party,so they can be taken care of.

Input Specification:

Each input file contains one test case. For each case,the first line gives a positive integer N (≤?50,000),the total number of couples. Then N lines of the couples follow,each gives a couple of ID‘s which are 5-digit numbers (i.e. from 00000 to 99999). After the list of couples,there is a positive integer M (≤?10,000) followed by M ID‘s of the party guests. The numbers are separated by spaces. It is guaranteed that nobody is having bigamous marriage (重婚) or dangling with more than one companion.

Output Specification:

First print in a line the total number of lonely guests. Then in the next line,print their ID‘s in increasing order. The numbers must be separated by exactly 1 space,and there must be no extra space at the end of the line.

Sample Input:

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

Sample Output:

5 10000 23333 44444 55555 88888


题意:找出谁是“单身狗”。。。先输入各对CP,然后再输入参加party的人员,统计输入的这些人里哪些是没有CP一起来的,升序输出。

分析:水题。。我思路是用一个数组couple,初始化为-1(因为人的编号为00000-99999),作用是来存储某人的CP,如22222的CP是22222,那么couple[22222]=22222,couple[22222]=22222。最后因为要格式输出,不知道迭代器怎么格式输出。。就先把结果存到了vector中,具体见代码
 1 /**  2 * Copyright(c)  3 * All rights reserved.  4 * Author : Mered1th  5 * Date : 2019-02-27-21.51.47  6 * Description : A1121  7 */
 8 #include<cstdio>
 9 #include<cstring>
10 #include<iostream>
11 #include<cmath>
12 #include<algorithm>
13 #include<string>
14 #include<unordered_set>
15 #include<map>
16 #include<vector>
17 #include<set>
18 using namespace std; 19 const int maxn=100010; 20 int couple[maxn]={-1}; 21 int main(){ 22 #ifdef ONLINE_JUDGE 23 #else
24     freopen("1.txt","r",stdin); 25 #endif
26     int n,m,u,v,t; 27     scanf("%d",&n); 28     for(int i=0;i<n;i++){ 29         scanf("%d%d",&u,&v); 30         couple[u]=v; 31         couple[v]=u; 32  } 33     scanf("%d",&m); 34     vector<int> tem; 35     for(int i=0;i<m;i++){ 36         scanf("%d",&t); 37  tem.push_back(t); 38  } 39     set<int> ans; 40     for(int i=0;i<m;i++){ 41         int coup=couple[tem[i]]; 42         if(coup==-1) ans.insert(tem[i]); 43         else{ 44             if(find(tem.begin(),tem.end(),coup)==tem.end()){ 45  ans.insert(tem[i]); 46  } 47  } 48  } 49     cout<<ans.size()<<endl; 50     vector<int> res; 51     for(auto it=ans.begin();it!=ans.end();it++){ 52         res.push_back(*it); 53  } 54     for(int i=0;i<res.size();i++){ 55         printf("%05d",res[i]); 56         if(i!=res.size()-1) printf(" "); 57  } 58     return 0; 59 }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读