https://school.programmers.co.kr/learn/courses/30/lessons/76501
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
문제 설명
어떤 정수들이 있습니다. 이 정수드르이 절댓값을 차례대로 담은 정수 배열 absolutes와 이 정수들의 부호를 차례대로 담은 불리언 배열 signs가 매개변수로 주어집니다. 실제 정수들의 합을 구하여 return 하도록 solution 함수를 완성해 주세요.
제한 사항
- absolutes의 길이는 1 이상 1,000 이하입니다.
- absolutes의 모든 수는 각각 1 이상 1,000 이하입니다.
- signs의 길이는 absolutes의 길이와 같습니다.
- signs[i]가 참이면 absolutes[i]의 실제 정수가 양수임을, 그렇지 않으면 음수임을 의미합니다.
문제 풀이
if signs[i]:는 signs[i]가 참인지 거짓인지를 검사하고, 참일 경우에는 answer에 absolutes[i]를 더해준다. 만약 signs[i]가 거짓(False)이라면 answer에서 absolutes[i]를 빼준다. 즉, signs 리스트의 각 요소가 True 또는 False로 주어진 것으로 보아, 해당 인덱스의 absolutes 값이 더해지거나 빼지는 것을 제어하는 것이다.
def solution(absolutes, signs):
answer = 0
n = len(absolutes)
for i in range(n):
if signs[i]:
answer += absolutes[i]
else:
answer -= absolutes[i]
return answer
'Algorithm > Programmers' 카테고리의 다른 글
[Python | Level1] 최댓값과 최솟값 (0) | 2024.09.04 |
---|---|
[Python | Level1] 문자열 다루기 기본 (0) | 2024.09.04 |
[Python | Level1] 두 정수 사이의 합 (0) | 2024.04.06 |
[Python | Level1] 하샤드 수 (0) | 2024.04.06 |
[Python | Level1] 정수 내림차순으로 배치하기 (0) | 2024.04.04 |