만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

불청객 (Basic)

면접 대비

시간 제한1초메모리 제한1024 MB

요약
입출입 기록이 주어질 때 각 범주에서 지구를 방문한 생명체의 최소 개수를 구합니다.
난이도

쉬움10점 중 3점

유형
누적 합, 배열
정답자
아직 제출이 없습니다

문제

릭은 새 연구실에서 꽤 중요한 발명품을 만드는 동안, 그 사이에 누가 지구를 찾아오는지 알고 싶어 했다. 방문자 중에는 은하 연방의 사람들도 있을 수 있고, 훨씬 위험한 존재도 있을 수 있다.

릭은 우주에 존재할 수 있는 모든 생명체를 위험도나 의심스러운 정도에 따라 nn개의 범주로 나누었다.

로그 시스템은 단순하다. 범주 ii에 속한 누군가가 지구에 도착하면 ii + 기록을 남기고, 그 범주의 누군가가 행성을 떠나면 ii - 기록을 남긴다. 시스템이 시작될 때 행성에 있던 것은 사람들뿐이다. 릭은 이들을 위협으로 보지 않았기 때문에 어느 범주에도 넣지 않았다.

어느 시점에 릭은 이미 mm개의 기록이 쌓인 로그를 확인했고, 의심스러운 몇몇 범주에서 방문자가 많이 왔다는 사실에 불안해졌다. 로그를 바탕으로 각 범주에서 지구를 방문한 서로 다른 생명체 수의 최솟값을 구하라. 당연히 어떤 생명체도 떠나지 않은 채 연달아 두 번 도착할 수는 없다.

입력

첫 줄에 공백으로 구분된 두 정수 nn과 mm이 주어진다. nn은 생명체 범주의 수이고, mm은 로그 기록의 수이다 (1≤n≤1051 \leq n \leq 10^5; 1≤m≤3⋅1051 \leq m \leq 3 \cdot 10^5).

이어지는 mm개의 줄에는 정수 xix_i와 기호 '+' 또는 '-'로 이루어진 로그 기록이 주어진다. '+'는 xix_i번 범주의 누군가가 지구에 도착했다는 뜻이고, '-'는 누군가가 행성을 떠났다는 뜻이다 (1≤xi≤n1 \leq x_i \leq n).

출력

공백으로 구분한 nn개의 정수를 한 줄에 출력하라. ii번째 수는 ii번 범주에서 온 서로 다른 방문자 수의 최솟값이어야 한다.

예제2

  1. 예제 1

    입력
    2 4
    1 +
    1 +
    2 +
    1 -
    
    예상 출력
    2 1
    
  2. 예제 2

    입력
    3 10
    1 +
    1 +
    2 +
    2 -
    1 -
    2 +
    3 +
    3 -
    1 -
    2 -
    
    예상 출력
    2 1 1