- Today
- Total
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- firebase google
- 알고리즘
- oauth
- til
- C++
- 코딩테스트
- 연결리스트
- 백준
- 구글 로그인
- 배열
- 자료구조
- 안드로이드
- 자바
- android studio
- C언어
- 로그인
- 파이썬
- 컴퓨터공학과
- 비주얼 베이직
- 동적할당
- 프로그래머스
- sql
- Firebase
- 프로그래밍 입문
- Java
- 안드로이드 스튜디오
- 공유대학
- 정렬
- python
Archives
코딩하는 해달이
[level 1 C++] 없는 숫자 더하기 본문
문제 설명
0부터 9까지의 숫자 중 일부가 들어있는 정수 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요.
제한 조건
- 1 ≤ numbers의 길이 ≤ 9
- 0 ≤ numbers의 모든 원소 ≤ 9
- numbers의 모든 원소는 서로 다릅니다.
문제 이해
0부터 9사이의 부족한 숫자를 구한 후에 answer에 더해준다.
--------------------------------------------------------------------------------------------------------------------------------------------------
1부터 9까지 모두 더하면 45이기 때문에 없는 숫자를 빼주는 방법도 있었다.
알고리즘
1. 정수배열 numbers를 입력받는다.
2. 0부터 9까지 정수가 들어있는 배열 arr를 선언한다.
3. arr의 모든 값과 numbers의 값을 비교한다.
4. 만약 arr의 값이 numbers에서 찾을 수 없는 값일 경우, answer에 더한다.
풀이코드
#include <string>
#include <vector>
using namespace std;
int solution(vector<int> numbers) {
int answer = 0;
int arr[10] = { 0,1,2,3,4,5,6,7,8,9 };
for (int i = 0; i < 10; i++) {
bool check = false;
for (int j = 0; j < numbers.size(); j++) {
if (arr[i] == numbers[j]) {
check = true;
}
}
if (check == false) {
answer += i;
}
}
return answer;
}
https://school.programmers.co.kr/learn/courses/30/lessons/86051
반응형
'개인 공부 > 프로그래머스' 카테고리의 다른 글
[level 1 C++] 키패드 누르기 (0) | 2022.08.15 |
---|---|
[level 1 C++] 크레인 인형뽑기 게임 (0) | 2022.08.15 |
[level 1 C++] 음양 더하기 (0) | 2022.08.12 |
[level 1 C++] 내적 (0) | 2022.08.10 |
[level 1] 소수 만들기 (0) | 2022.08.06 |
Comments