코딩하는 해달이

[level 1 C++] 음양 더하기 본문

개인 공부/프로그래머스

[level 1 C++] 음양 더하기

코딩하는 해달 2022. 8. 12. 19:26

문제 설명

어떤 정수들이 있습니다. 이 정수들의 절댓값을 차례대로 담은 정수 배열 absolutes와 이 정수들의 부호를 차례대로 담은 불리언 배열 signs가 매개변수로 주어집니다. 실제 정수들의 합을 구하여 return 하도록 solution 함수를 완성해주세요.

제한 조건

  • absolutes의 길이는 1 이상 1,000 이하입니다.
    • absolutes의 모든 수는 각각 1 이상 1,000 이하입니다.
  • signs의 길이는 absolutes의 길이와 같습니다.
    • signs[i] 가 참이면 absolutes[i] 의 실제 정수가 양수임을, 그렇지 않으면 음수임을 의미합니다.

문제 이해

부호를 담은 배열의 인덱스를 보고 합 차를 판별해서 answer에 더한다.

 

알고리즘

1. 정수 배열 absolutes와 boolean배열 signs를 입력받는다.

2. 만약 signs의 값이 false면 absolutes의 값을 뺀다.

3. 만약 signs의 값이 true면 absolutes의 값을 더한다.

 

풀이코드

#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) {
			answer -= absolutes[i];
		}
		else {
			answer += absolutes[i];
		}
	}
	return answer;
}

https://school.programmers.co.kr/learn/courses/30/lessons/76501

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

 

반응형

'개인 공부 > 프로그래머스' 카테고리의 다른 글

[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
[level 1] 폰켓몬  (0) 2022.08.06
Comments