본문 바로가기
Develop/백준 (Cpp)

[백준] 4592번 : 중복을 없애자 (C++)

by Tarra 2023. 2. 13.

4592번 : 중복을 없애자


문제 )

Al의 초콜릿 망고 회사는 방문자들이 2d 단지에 얼마나 많은 초콜릿 망고가 있는지 추측할 수 있는 웹 사이트를 갖고 있다. 방문자들은 1부터 99까지의 수를 추측한 후 "제출" 버튼을 누르는데, 안타깝게도 서버로부터 응답시간이 종종 길어져 방문자들이 이성을 잃은 나머지 "제출"을 연타하는 사태가 발생한다. 이게 우리가 해결해야 할 문제다.

ACM의 직원을 도와 연타된 중복을 걸러보자.

 

 

입력 :

각 줄마다 처음으로 정수 N(0 < N ≤ 25)이 주어진다.  그 다음 N개에 걸쳐 1부터 99 사이의 수가 주어진다.

마지막 줄에 입력의 끝을 알리는 0이 주어진다.

 

 

 

출력 :

각 케이스마다 한 줄씩 연속하는 중복을 제거한 원래의 제출 상태를 출력한다.

각 줄의 마지막에는 한 칸을 띄고 '$' 표시가 붙는다.

 

 

 

 

 

풀이)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#include <iostream>
#include <vector>
#include <algorithm>
 
using namespace std;
 
int main()
{    
    int n;
    while (1) {
        cin >> n;
        if (n == 0
        {
            break;
        }
        vector<int> vec;
 
        int num;
        for (int i = 0; i < n; i++) {
            cin >> num;
            if (i > 0 && vec.back() == num) {
                continue;
            }
            vec.push_back(num);
        }
 
        for (auto& ele : vec) {
            cout << ele << " ";
        }
        cout << "$\n";
    }
 
    return 0;
}
 
cs

출처 : https://www.acmicpc.net/problem/4592 

 

4592번: 중복을 없애자

Al의 초콜릿 망고 회사는 방문자들이 2d 단지에 얼마나 많은 초콜릿 망고가 있는지 추측할 수 있는 웹 사이트를 갖고 있다. 방문자들은 1부터 99까지의 수를 추측한 후 "제출" 버튼을 누르는데, 안

www.acmicpc.net