- 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
- 비주얼 베이직
- 안드로이드 스튜디오
- 자바
- til
- 로그인
- 안드로이드
- android studio
- 배열
- 정렬
- Java
- firebase google
- 동적할당
- oauth
- C언어
- 컴퓨터공학과
- 공유대학
- 자료구조
- Firebase
- 코딩테스트
- 프로그래밍 입문
- 구글 로그인
- 연결리스트
- 파이썬
- C++
- 백준
- 알고리즘
- python
- 프로그래머스
- sql
Archives
코딩하는 해달이
[level 1 C++] 음양 더하기 본문
문제 설명
어떤 정수들이 있습니다. 이 정수들의 절댓값을 차례대로 담은 정수 배열 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
반응형
'개인 공부 > 프로그래머스' 카테고리의 다른 글
[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