1065 单身狗 (25分)

cp[100000] —— 用来记录cp

cp[c1] = c2;

cp[c2] = c1;

yes[100000] —— 用来标记来客是否到场

遍历一下,若该客人有cp且cp到场,将yes[该客人]、yes[该客人cp]都置为0

再输出yes为0的值

#include<iostream>
#include<algorithm>
using namespace std;

int main() {
	int cp_count, total;
	int i, j;
	int sum = 0;
	cin >> cp_count;
	int c1, c2;
	j = 0;
	int cp[100000] = { 0 };
	for (i = 0; i < cp_count; i++) {
		cin >> c1 >> c2;
		cp[c1] = c2;
		cp[c2] = c1;
	}
	cin >> total;
	int* guest = new int[total];
	int yes[100000] = { 0 };
	for (i = 0; i < total; i++) {
		cin >> guest[i];
		yes[guest[i]] = 1;
	}
	for (i = 0; i < total; i++) {
		int temp = guest[i];
		int couple = cp[temp];
		if (couple != 0 && yes[couple] == 1) { //这个客人有情侣且情侣也在场
			yes[couple] = 0;
			yes[temp] = 0;
		}
		else {
			sum++;
		}
	}
	j = 0;
	int* ans = new int[sum];
	for (i = 0; i < total; i++) {
		int temp = guest[i];
		if (yes[temp] == 1) {
			ans[j++] = temp;
		}
	}
	cout << j << endl;
	sort(ans, ans + j);
	for (i = 0; i < j; i++) {
		printf("%05d",ans[i]);
		if (i < j - 1) { printf(" "); }
	}
	return 0;
}

原文地址:https://www.cnblogs.com/tanghm/p/12663111.html

时间: 2024-10-30 03:35:13

1065 单身狗 (25分)的相关文章

PAT Basic 1065 单身狗 (25 分)

“单身狗”是中文对于单身人士的一种爱称.本题请你从上万人的大型派对中找出落单的客人,以便给予特殊关爱. 输入格式: 输入第一行给出一个正整数 N(≤ 50 000),是已知夫妻/伴侣的对数:随后 N 行,每行给出一对夫妻/伴侣——为方便起见,每人对应一个 ID 号,为 5 位数字(从 00000 到 99999),ID 间以空格分隔:之后给出一个正整数 M(≤ 10 000),为参加派对的总人数:随后一行给出这 M 位客人的 ID,以空格分隔.题目保证无人重婚或脚踩两条船. 输出格式: 首先第一

PAT乙级 1065. 单身狗(25) by Python

1065. 单身狗(25) 时间限制 300 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue "单身狗"是中文对于单身人士的一种爱称.本题请你从上万人的大型派对中找出落单的客人,以便给予特殊关爱. 输入格式: 输入第一行给出一个正整数N(<=50000),是已知夫妻/伴侣的对数:随后N行,每行给出一对夫妻/伴侣--为方便起见,每人对应一个ID号,为5位数字(从00000到99999),ID间以空格分隔:之后给出一

1065. 单身狗(25)

“单身狗”是中文对于单身人士的一种爱称.本题请你从上万人的大型派对中找出落单的客人,以便给予特殊关爱. 输入格式: 输入第一行给出一个正整数N(<=50000),是已知夫妻/伴侣的对数:随后N行,每行给出一对夫妻/伴侣——为方便起见,每人对应一个ID号,为5位数字(从00000到99999),ID间以空格分隔:之后给出一个正整数M(<=10000),为参加派对的总人数:随后一行给出这M位客人的ID,以空格分隔.题目保证无人重婚或脚踩两条船. 输出格式: 首先第一行输出落单客人的总人数:随后第二

PAT 1065 单身狗

https://pintia.cn/problem-sets/994805260223102976/problems/994805266942377984 "单身狗"是中文对于单身人士的一种爱称.本题请你从上万人的大型派对中找出落单的客人,以便给予特殊关爱. 输入格式: 输入第一行给出一个正整数 N(≤ 50 000),是已知夫妻/伴侣的对数:随后 N 行,每行给出一对夫妻/伴侣--为方便起见,每人对应一个 ID 号,为 5 位数字(从 00000 到 99999),ID 间以空格分隔

1121 Damn Single (25 分)

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 tes

1121 Damn Single (25 分)

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 tes

《Java从入门到放弃》JavaSE入门篇:练习——单身狗租赁系统

今天,我们要玩个大的!!! 我们把之前使用数组做的这个单身狗系统改版成数据库版本,并且使用面向对象里面的一些简单思想.如果有不知道这个系统的看官,请跳转到目录页,然后再选择单身狗系统(数组版)先围观五分钟吧.里面的功能很简单......... 五分钟之后··· 好了,五分钟到了,我们继续吧· 要完成的功能还是如上图所示,只不过实现的代码有翻天覆地的变化而已... 第一步:分析 一般做一个项目,根据侧重点不同,会把整个项目分成三大部分:界面.功能业务实现.数据库操作.具体三层架构的内容,等后面JS

《Java从入门到放弃》JavaSE篇:综合练习——单身狗租赁系统(数组版)

因为现在只学习了基本语法,所以在综合练习之前,先补充关于方法概念. 方法的作用:把一系列的代码放在一起,然后再取个别名.之后通过这个别名的调用,就相当于执行了这一系列的代码. 方法的语法:([]中的内容表示是可选的) public 返回值类型 方法名(参数类型 参数名[,参数类型 参数2 ...]){     //代码块     //[return 数据]; } 方法的例子:     public static void main(String[] args) {         loop();

jQuery仿IOS小游戏设计---单身狗的逃避之旅

看看<程序员>杂志,最近都被html5游戏和微信平台刷了屏,未来是怎样的趋势不敢说,不过日前就我所在的创业团队,想推广自己的公众号,其中有一项内容就是做出浙大特色的小游戏,宣传部的帮我玩了好多游戏,有个ios上面的小游戏smove,游戏心意不错,设计简单, 游戏性好,便改编成了这个单身狗躲避秀恩爱的游戏.点此试玩游戏使用了jquery jquery_mobile库和jquery rotate插件 <script src="http://ajax.aspnetcdn.com/aj