본문 바로가기

PROGRAMMING/ALGORITHM

[프로그래머스] 음양 더하기 JAVA KOTLIN

https://programmers.co.kr/learn/courses/30/lessons/76501?language=kotlin

 

코딩테스트 연습 - 음양 더하기

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

programmers.co.kr

 

코틀린 연습 겸 가벼운 문제 선택

 

문제요약 & 풀이방법

배열 2개를 사용해 덧셈 뺄셈을 하는 문제

배열 2개의 크기와 값의 순서가 같음으로 1개의 for문을 활용해

false면 마이너스 연산을 true면 플러스 연산을 실행한다.

 

JAVA

public class Solution {
    public int solution(int[] absolutes, boolean[] signs) {
        int answer = 0;
        for(int i=0; i<absolutes.length; i++){
            if(signs[i]){
                answer+=absolutes[i];
            }else{
                answer-=absolutes[i];
            }
        }
        return answer;
    }
}

 

KOTLIN

class Solution {
    fun solution(absolutes: IntArray, signs: BooleanArray): Int {
        var answer: Int = 0
        for(i in 0..absolutes.lastIndex){
            if(signs[i]){
                answer += absolutes[i];
            }else{
                answer -= absolutes[i];
            }
        }
        return answer
    }
}

 

다른 사람들의 풀이를 확인해 봤는데

코틀린의 foldIndexed를 활용한 풀이가 많았다.

 

https://dvpdvp.tistory.com/89

 

[KOTLIN] Collections - foldIndexed

https://programmers.co.kr/learn/courses/30/lessons/76501?language=kotlin 코딩테스트 연습 - 음양 더하기 어떤 정수들이 있습니다. 이 정수들의 절댓값을 차례대로 담은 정수 배열 absolutes와 이 정수들의 부..

dvpdvp.tistory.com