반응형
250x250
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- AI
- 패스트캠퍼스후기
- 한번에끝내는Java/Spring웹개발마스터초격차패키지
- 한번에 끝내는 Java/Spring 웹 개발 마스터 초격차 패키지 Online
- 직장인인강
- 직장인자기계발
- R
- 알버트
- 한번에 끝내는 Java/Spring 웹 개발 마스터 초격차 패키지
- albert
- 패캠챌린지
- 한번에 끝내는 Java/Spring 웹 개발 마스터 초격차 패키지 Online.
- SKT
- 패스트캠퍼스
Archives
- Today
- Total
제주 탈출 일지
[C++] 프로그래머스 레벨 1 - 같은 숫자는 싫어 본문
728x90
반응형
programmers.co.kr/learn/courses/30/lessons/12906?language=cpp#
코딩테스트 연습 - 같은 숫자는 싫어
배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다. 단, 제거된 후 남은
programmers.co.kr
테스트 케이스 17이 {1, 0, 0, 0}인데 전부 같아버려서 {1}만 출력되는 경우가 있었다. 그 경우를 고치기 위해 반복자의 다음 위치가 end()를 가리키고, 이전과 현재값이 같다면 현재 값을 answer 벡터에 추가하도록 하였다.
#include <vector>
#include <iostream>
using namespace std;
vector<int> solution(vector<int> arr)
{
vector<int> answer;
vector<int>::iterator iter;
for(iter = arr.begin(); iter != arr.end(); ++iter){
if((iter + 1) == arr.end() && (*iter) == *(iter-1))
{
answer.push_back(*iter);
}
else if(*iter == *(iter + 1))
{
continue;
}
else{
answer.push_back(*iter);
}
}
return answer;
}
int main()
{
vector<int> arr = {1, 0, 0, 0};
solution(arr);
return 0;
}
728x90
반응형
'코딩 테스트' 카테고리의 다른 글
코딩테스트 푼 문제들 올려놓은 github... (0) | 2021.04.13 |
---|---|
[C++] 프로그래머스 레벨 1 - 문자열 내 마음대로 정렬하기 (0) | 2020.10.28 |
[C++] 프로그래머스 레벨 1 - 3진법 뒤집기 (0) | 2020.10.27 |
[C++] 프로그래머스 레벨 1 - 가운데 글자 가져오기 (0) | 2020.10.27 |
[C++] 프로그래머스 레벨 1 - 2016년 (0) | 2020.10.27 |
Comments