문제 4909 · 킬로 IV
변하지 않은 센서
| 시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
|---|---|---|---|---|---|
| 1000ms / 테스트 (언어별 보정은 아래 표) | 메모리: 측정하지 않음(브라우저 채점) | 0 | 0 | 0 | 0.00% |
문제
한 날씨 관측소는 여러 센서가 보내는 상태값을 하나의 수신 장치에 모은다. 센서에는 양의 정수 식별 번호가 붙어 있다. 번호는 연속해서 배정되지 않으며, 번호가 크다고 해서 더 늦게 설치된 센서라는 뜻도 아니다. 수신 장치는 메시지를 받을 때마다 센서 번호와 정수 상태값을 한 줄의 기록으로 남긴다. 이번 점검에서는 기록이 남아 있는 센서 중 상태값이 한 번도 바뀌지 않은 센서를 찾으려고 한다. 어떤 센서가 보낸 모든 기록의 상태값이 서로 같으면 그 센서를 고정 센서라고 부른다. 그 센서가 기록에 한 번만 등장했다면 비교할 다른 값이 없으므로 고정 센서에 포함한다. 기록에 전혀 등장하지 않은 번호는 점검 대상에 포함하지 않는다. 수신 환경에 따라 같은 메시지가 여러 번 도착할 수 있다. 따라서 같은 센서 번호와 같은 상태값을 가진 줄이 반복되어도 각 줄은 올바른 입력이다. 같은 상태값을 여러 번 보냈다는 사실만으로 고정 센서에서 제외하지 않는다. 반대로 한 센서에서 서로 다른 상태값이 단 한 번이라도 발견되면 그 센서는 고정 센서가 아니다. 이후에 처음 상태값으로 돌아오더라도 이미 발견한 변화가 사라지지는 않는다. 서로 다른 센서는 같은 상태값을 보낼 수 있으며, 이 경우에는 각 센서를 따로 판단한다. 기록은 수신된 순서대로 주어지지만 같은 센서의 기록이 연속해서 나타난다는 보장은 없다. 두 기록 사이에 다른 센서의 메시지가 아무리 많이 들어 있어도 센서 번호가 같으면 함께 비교해야 한다. 전체 기록을 확인하여 고정 센서의 개수를 구한다. 또한 점검 담당자가 가장 먼저 확인할 수 있도록, 고정 센서 중 식별 번호가 가장 작은 센서의 번호도 구한다. 고정 센서가 하나도 없다면 개수는 0이고, 선택할 센서 번호 대신 -1을 사용한다. 상태값의 크기나 기록의 등장 순서는 센서를 선택하는 우선순위에 영향을 주지 않는다.
입력
첫째 줄에 기록의 개수 N이 주어진다. N은 1 이상 20,000 이하의 정수다. 다음 N개의 줄에 센서 번호 S_i와 상태값 V_i가 공백으로 구분되어 주어진다. S_i는 1 이상 1,000,000,000 이하의 정수이고, V_i는 -99 이상 99 이하의 정수다. 같은 번호 또는 같은 기록이 여러 번 주어질 수 있다.
출력
고정 센서의 개수와 고정 센서 중 가장 작은 센서 번호를 공백으로 구분하여 한 줄에 출력한다. 고정 센서가 없으면 0 -1을 출력한다.
예제 입력 1
8 42 3 7 -1 42 3 9 0 7 2 100 5 9 0 100 5
예제 출력 1
3 9
예제 입력 2
4 5 1 8 4 5 2 8 3
예제 출력 2
0 -1
예제 입력 3
3 900 0 900 0 900 0
예제 출력 3
1 900
힌트 펼치기
- 센서마다 처음 받은 상태값을 저장하고, 다른 값이 발견된 센서를 별도로 표시한다.
관련 서재 장
알고리즘 분류
해시집합풀이 작성
연습 채점은 공개 테스트로 실행합니다. 인증 제출은 코드를 봉인한 뒤 새 입력을 실행하고 서버에서 출력을 대조하며 코드와 판정을 저장합니다.
풀이를 제출하면 여기에서 결과를 확인할 수 있습니다.
연습 기록은 이 브라우저에 최근 50개를 저장합니다. 인증 기록은 내 제출에서 확인하세요.
이 브라우저의 연습 기록
언어별 제한
테스트 케이스마다 새 전역에서 실행하며 준비 시간은 제외합니다. 시간 초과된 출력은 검사하지 않습니다. 브라우저·기기 성능에 따라 실행 시간이 달라집니다.
| 언어 | 엔진(버전) | 시간 제한 | 메모리 |
|---|---|---|---|
| javascript | 사용자 브라우저 JavaScript 엔진 (버전은 브라우저에 따라 다름) | 1000ms / 테스트 | 측정하지 않음(브라우저 채점) |
| python | Pyodide 314.0.7 (CPython 3.14 WASM) | 5000ms / 테스트 | 측정하지 않음(브라우저 채점) |