25192번: 인사성 밝은 곰곰이백준/단계별로 풀어보기2023. 6. 12. 13:05
Table of Contents
문제 출처 : https://www.acmicpc.net/problem/25192
언어 : Kotlin
문제 설명 :
알고리즘 입문방 오픈 채팅방에서는 새로운 분들이 입장을 할 때마다 곰곰티콘을 사용해 인사를 한다. 이를 본 문자열 킬러 임스는 채팅방의 기록을 수집해 그 중 곰곰티콘이 사용된 횟수를 구해 보기로 했다.
ENTER는 새로운 사람이 채팅방에 입장했음을 나타낸다. 그 외는 채팅을 입력한 유저의 닉네임을 나타낸다. 닉네임은 숫자 또는 영문 대소문자로 구성되어 있다.
새로운 사람이 입장한 이후 처음 채팅을 입력하는 사람은 반드시 곰곰티콘으로 인사를 한다. 그 외의 기록은 곰곰티콘을 쓰지 않은 평범한 채팅 기록이다.
채팅 기록 중 곰곰티콘이 사용된 횟수를 구해보자!
- 첫 번째 줄에는 채팅방의 기록 수를 나타내는 정수 이 주어진다. (1 ≤ N ≤ 100000)
- 두 번째 줄부터 개의 줄에 걸쳐 새로운 사람의 입장을 나타내는 ENTER, 혹은 채팅을 입력한 유저의 닉네임이 문자열로 주어진다. (1 ≤ 문자열 길이 ≤ 20)
- 첫 번째 주어지는 문자열은 무조건 ENTER이다.
- 채팅 기록 중 곰곰티콘이 사용된 횟수를 출력하시오.
제한 사항 :
- 시간 제한 : 1초
- 메모리 제한 : 1024MB
입출력 예 :
입력 | 출력 |
9 ENTER pjshwa chansol chogahui05 lms0806 pichulia r4pidstart swoon tony9402 |
8 |
7 ENTER pjshwa chansol chogahui05 ENTER pjshwa chansol |
5 |
풀이 :
import java.io.*
fun main() {
val br = BufferedReader(InputStreamReader(System.`in`))
val bw = BufferedWriter(OutputStreamWriter(System.out))
val n = br.readLine().toInt()
var arr = HashSet<String>()
var cnt = 0
repeat(n) {
br.readLine().also {
if (it == "ENTER") {
arr = HashSet()
return@repeat
}
if (arr.add(it)) cnt++
}
}
bw.write("$cnt")
bw.flush()
bw.close()
}
'백준 > 단계별로 풀어보기' 카테고리의 다른 글
2108번: 통계학 (0) | 2023.06.12 |
---|---|
26069번: 붙임성 좋은 총총이 (0) | 2023.06.12 |
1037번: 약수 (0) | 2023.06.12 |
1010번: 다리 놓기 (0) | 2023.06.09 |
11050번: 이항 계수 1 (0) | 2023.06.09 |
@스몰스테핑 :: 작은 발걸음
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!