302201: CF420B. Online Meeting

Memory Limit:256 MB Time Limit:1 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

Online Meeting

题意翻译

## 题目描述 你有一个会议记录,想知道谁是主持人。假定主持人是在会上出席一直出现的人。 你要根据会议的进入和退出的消息确定谁是主持人。但会议记录可能只是一部分。 ## 输入格式 第一行包含整数n和m($1<=n$,$m<=10^{5}$) 分别表示参会者的数量和进出会议的数量。接下来m行中‘+’表示进入,‘-’表示退出。‘+’‘-’后面的数字表示参会人的ID。 ## 输出格式 在第一行整数k $(0<=k<=n)$表示有k人可能是主持人。第二行中,一次输出k个可以成为主持人的人的ID。 如果没有主持人,输出0。

题目描述

Nearly each project of the F company has a whole team of developers working on it. They often are in different rooms of the office in different cities and even countries. To keep in touch and track the results of the project, the F company conducts shared online meetings in a Spyke chat. One day the director of the F company got hold of the records of a part of an online meeting of one successful team. The director watched the record and wanted to talk to the team leader. But how can he tell who the leader is? The director logically supposed that the leader is the person who is present at any conversation during a chat meeting. In other words, if at some moment of time at least one person is present on the meeting, then the leader is present on the meeting. You are the assistant director. Given the 'user logged on'/'user logged off' messages of the meeting in the chronological order, help the director determine who can be the leader. Note that the director has the record of only a continuous part of the meeting (probably, it's not the whole meeting).

输入输出格式

输入格式


The first line contains integers $ n $ and $ m $ $ (1<=n,m<=10^{5}) $ — the number of team participants and the number of messages. Each of the next $ m $ lines contains a message in the format: - '+ $ id $ ': the record means that the person with number $ id $ $ (1<=id<=n) $ has logged on to the meeting. - '- $ id $ ': the record means that the person with number $ id $ $ (1<=id<=n) $ has logged off from the meeting. Assume that all the people of the team are numbered from $ 1 $ to $ n $ and the messages are given in the chronological order. It is guaranteed that the given sequence is the correct record of a continuous part of the meeting. It is guaranteed that no two log on/log off events occurred simultaneously.

输出格式


In the first line print integer $ k $ $ (0<=k<=n) $ — how many people can be leaders. In the next line, print $ k $ integers in the increasing order — the numbers of the people who can be leaders. If the data is such that no member of the team can be a leader, print a single number $ 0 $ .

输入输出样例

输入样例 #1

5 4
+ 1
+ 2
- 2
- 1

输出样例 #1

4
1 3 4 5 

输入样例 #2

3 2
+ 1
- 2

输出样例 #2

1
3 

输入样例 #3

2 4
+ 1
- 1
+ 2
- 2

输出样例 #3

0

输入样例 #4

5 6
+ 1
- 1
- 3
+ 3
+ 4
- 4

输出样例 #4

3
2 3 5 

输入样例 #5

2 4
+ 1
- 2
+ 2
- 1

输出样例 #5

0

Input

题意翻译

## 题目描述 你有一个会议记录,想知道谁是主持人。假定主持人是在会上出席一直出现的人。 你要根据会议的进入和退出的消息确定谁是主持人。但会议记录可能只是一部分。 ## 输入格式 第一行包含整数n和m($1<=n$,$m<=10^{5}$) 分别表示参会者的数量和进出会议的数量。接下来m行中‘+’表示进入,‘-’表示退出。‘+’‘-’后面的数字表示参会人的ID。 ## 输出格式 在第一行整数k $(0<=k<=n)$表示有k人可能是主持人。第二行中,一次输出k个可以成为主持人的人的ID。 如果没有主持人,输出0。

加入题单

算法标签: