728x90
반응형
어떤 정수들이 있습니다. 이 정수들의 절댓값을 차례대로 담은 정수 배열 absolutes와 이 정수들의 부호를 차례대로 담은 불리언 배열 signs가 매개변수로 주어집니다. 실제 정수들의 합을 구하여 return 하도록 solution 함수를 완성해주세요.
문제 초기 화면에 int answer = 123456789;
이렇게 정의되어있길래 이걸 왜 이렇게 한거지? 하고 약간의 혼란이 있었다. 그래서 그냥 0으로 초기화 시키고 문제를 풀어나갔다.
배열 absolutes의 배열 인덱스 값이 양수인지 음수인지 signs 배열의 각 인덱스에 정의되어있다.
그렇게 정의된 값들의 합을 구하라는 문제이다.
그래서 음수만 조건문 안에 -1을 곱해주고, 배열 인덱스의 값들을 모두 더해주는 것으로 문제를 풀었다.
#include <string>
#include <vector>
using namespace std;
int solution(vector<int> absolutes, vector<bool> signs) {
int answer = 0;
for(int i = 0; i < absolutes.size(); i++){
if(signs[i] == false){
absolutes[i] *= -1;
}
answer += absolutes[i];
}
return answer;
}
다른 분들은 123456789 정의된 answer을 가지고 어떻게 해결했는지 궁금해 다른 분들의 문제풀이를 찾아보았다.
하지만 다들 0으로 초기화 하거나 다른 변수를 0으로 만들어 풀어간 듯 하다.
프로그래머스가 만든 낚시인가 싶다.
괘씸하다! ㅋㅋㅋㅋㅋㅋㅋ
728x90
반응형
'프로그래머스 C++ > Level.1' 카테고리의 다른 글
프로그래머스 Level.1 제일 작은 수 제거하기 (0) | 2023.12.25 |
---|---|
프로그래머스 Level.1 없는 숫자 더하기 (1) | 2023.11.13 |
프로그래머스 Level.1 콜라츠 추측 (0) | 2023.10.21 |
프로그래머스 Level.1 서울에서 김서방 찾기 (1) | 2023.09.24 |
프로그래머스 Level1. 두 정수 사이의 합 (0) | 2023.08.30 |