프로그래머스/level 1
[프로그래머스] 음양 더하기
binaryJournalist
2021. 11. 7. 22:52
반응형
출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges
** Javascript
1) 맨 처음 제출한 풀이
function solution(absolutes, signs) {
let answer = 0;
for (const index in signs) {
if (!signs[index]) {
absolutes[index] = absolutes[index] * -1;
}
answer += absolutes[index]
}
return answer;
}
2) 다시 푼 풀이
function solution(absolutes, signs) {
return signs.reduce((acc, curr, index) => {
acc += (curr) ? absolutes[index] : -1 * absolutes[index];
return acc;
}, 0);
}
** Python
1) zip 사용 몰랐을 때
def solution(absolutes, signs):
answer = 0
for i, s in enumerate(signs):
answer += absolutes[i] if s else absolutes[i] * -1
return answer
2) zip 사용 알게된 이후
def solution(absolutes, signs):
answer = 0
for a, s in zip(absolutes, signs):
answer += a if s else a * -1
return answer
** Java
class Solution {
public int solution(int[] absolutes, boolean[] signs) {
int answer = 0;
for (int i = 0; i < signs.length; i++) {
answer += signs[i] ? absolutes[i] : -1 * absolutes[i];
}
return answer;
}
}
반응형