<월간 코드 챌린지 시즌3 문제>
-더보기에 문제 있어요.-
더보기
<문제 설명>
0부터 9까지의 숫자 중 일부가 들어있는 정수 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요.
제한사항
1 ≤ numbers의 길이 ≤ 9
0 ≤ numbers의 모든 원소 ≤ 9
numbers의 모든 원소는 서로 다릅니다.
입출력 예
numbers
|
result
|
[1,2,3,4,6,7,8,0]
|
14
|
[5,8,4,0,6,7,9]
|
6
|
<문제 풀이>
#include <string>
#include <vector>
using namespace std;
int solution(vector<int> numbers) {
int answer = 0; //없는 숫자들의 합이 담길 변수
vector<int> check(10); //0-9까지의 숫자가 있는지 확인하기 위한 배열
for(int i=0;i<numbers.size();i++){
check[numbers[i]] = 1; //numbers에 있는 숫자들에 해당하는 check index엔 1이 들어감.
}
for(int i=0;i<10;i++){
if(check[i] == 0) answer+=i; //index가 0인 즉, 없는 숫자들은 answer변수에 누적합
}
return answer;
}
'개발공부 > Programmers' 카테고리의 다른 글
[프로그래머스/C++]Level 1_크레인 인형뽑기 게임 (0) | 2022.01.28 |
---|---|
[프로그래머스/C++]Level 1_숫자 문자열과 영단어 (0) | 2022.01.28 |
[프로그래머스/C++] Level 1_키패드 누르기 (0) | 2022.01.28 |
[프로그래머스/C++] Level 1_내적 (0) | 2022.01.28 |
[프로그래머스/C++] Level 1_모의고사 (0) | 2022.01.28 |