본문 바로가기

PS/백준

[BOJ] 백준 17299 오등큰수 (Swift)

반응형

문제

https://www.acmicpc.net/problem/17299

 

17299번: 오등큰수

첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째에 수열 A의 원소 A1, A2, ..., AN (1 ≤ Ai ≤ 1,000,000)이 주어진다.

www.acmicpc.net

풀이

오큰수 문제와 거의 동일한 문제이고, 스택 자료구조를 사용해서 풀이할 수 있습니다.
오큰수는 수의 크기를 갖고 비교했지만, 이 문제는 수가 나타난 횟수에 따라서 비교해주면 되는 문제입니다.

횟수를 구하기 위해 Dictionary를 사용하였습니다.

스택의 마지막 요소보다 현재 요소가 더 많이 나타났다면,
Stack을 pop 해주고 해당 인덱스의 값을 현재 요소로 바꿔주었습니다.

소스코드

후기

이 문제를 풀기 전 먼저 오큰수 문제를 풀었기에 쉽게 풀 수 있었던 문제였습니다.

반응형