[백준] 25192 - 인사성 밝은 곰곰이
1. 문제
2. 개요
한 오픈 채팅방이 있다.
이 오픈 채팅방은 새로운 사람이 들어오면 곰곰티콘을 이용해 인사를 한다.
새로운 사람이 들어온 이후 처음 채팅을 하는 사람은 항상 곰곰티콘을 이용해 인사한다.
그 외의 기록은 평범한 채팅 기록이다.
이 때 곰곰티콘이 사용된 횟수를 구하는 문제.
3. 풀이 및 코드
3-1. 풀이
인사를 한 사람을 저장해둘 집합 Set(HashSet)을 만들어둔다.
새로운 사람이 입장했다면 이 집합을 초기화한다.
유저의 닉네임이라면 집합에 있는지 확인하고 없다면 답을 1늘리고 집합에 추가시킨다.
모든 입력에 대해 작업을 마쳤다면 답을 출력한다.
3-2. Python
import sys
N = int(sys.stdin.readline())
sayhello = set()
answer = 0
for i in range(N):
info = sys.stdin.readline().rstrip()
if info == 'ENTER':
sayhello.clear()
elif info not in sayhello:
sayhello.add(info)
answer += 1
print(answer)
3-3. C#
namespace boj_25192
{
internal class Program
{
static void Main(string[] args)
{
StreamReader sr = new StreamReader(Console.OpenStandardInput());
StreamWriter sw = new StreamWriter(Console.OpenStandardOutput());
int N = int.Parse(sr.ReadLine());
int answer = 0;
HashSet<string> sayhello = new HashSet<string>();
for (int i = 0; i < N; i++)
{
string info = sr.ReadLine();
if (info == "ENTER")
sayhello.Clear();
else if (!sayhello.Contains(info))
{
sayhello.Add(info);
answer++;
}
}
sw.WriteLine(answer);
sw.Close();
}
}
}
Comments