😎 κ³΅λΆ€ν•˜λŠ” μ§•μ§•μ•ŒνŒŒμΉ΄λŠ” μ²˜μŒμ΄μ§€?

[Programmers C++] μ½”λ”© 기초 νŠΈλ ˆμ΄λ‹ - 같은 μˆ«μžλŠ” μ‹«μ–΄ λ³Έλ¬Έ

πŸ¦₯ μ½”ν…Œ/Programmers

[Programmers C++] μ½”λ”© 기초 νŠΈλ ˆμ΄λ‹ - 같은 μˆ«μžλŠ” μ‹«μ–΄

μ§•μ§•μ•ŒνŒŒμΉ΄ 2023. 6. 2. 01:01
728x90
λ°˜μ‘ν˜•
λ°°μ—΄ arrκ°€ μ£Όμ–΄μ§‘λ‹ˆλ‹€. λ°°μ—΄ arr의 각 μ›μ†ŒλŠ” 숫자 0λΆ€ν„° 9κΉŒμ§€λ‘œ 이루어져 μžˆμŠ΅λ‹ˆλ‹€.
μ΄λ•Œ, λ°°μ—΄ arrμ—μ„œ μ—°μ†μ μœΌλ‘œ λ‚˜νƒ€λ‚˜λŠ” μˆ«μžλŠ” ν•˜λ‚˜λ§Œ 남기고 μ „λΆ€ μ œκ±°ν•˜λ €κ³  ν•©λ‹ˆλ‹€.
단, 제거된 ν›„ 남은 μˆ˜λ“€μ„ λ°˜ν™˜ν•  λ•ŒλŠ” λ°°μ—΄ arr의 μ›μ†Œλ“€μ˜ μˆœμ„œλ₯Ό μœ μ§€ν•΄μ•Ό ν•©λ‹ˆλ‹€.

예λ₯Ό λ“€λ©΄,
arr = [1, 1, 3, 3, 0, 1, 1] 이면 [1, 3, 0, 1] 을 return ν•©λ‹ˆλ‹€.arr = [4, 4, 4, 3, 3] 이면 [4, 3] 을 return ν•©λ‹ˆλ‹€.
λ°°μ—΄ arrμ—μ„œ μ—°μ†μ μœΌλ‘œ λ‚˜νƒ€λ‚˜λŠ” μˆ«μžλŠ” μ œκ±°ν•˜κ³  남은 μˆ˜λ“€μ„ return ν•˜λŠ” solution ν•¨μˆ˜λ₯Ό μ™„μ„±ν•΄ μ£Όμ„Έμš”.
#include <vector>
#include <iostream>

using namespace std;

vector<int> solution(vector<int> arr) 
{
    vector<int> answer;
    int pre = arr[0];
    answer.push_back(pre);
    
    for (int i = 1; i < arr.size(); i ++) {
        // μ—°μ†μ μœΌλ‘œ 같은 μˆ«μžκ°€ μ˜€λŠ”μ§€ 확인
        if (pre != arr[i]) {
            pre = arr[i];
            answer.push_back(pre);
        }
    }
    return answer;
}
728x90
λ°˜μ‘ν˜•
Comments