hoon's bLog

Java 프로그래머스 음양 더하기 자바 본문

코딩테스트/프로그래머스

Java 프로그래머스 음양 더하기 자바

개발한기발자 2022. 6. 11. 09:04
반응형

문제출처 : https://programmers.co.kr/learn/courses/30/lessons/76501

 

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

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

programmers.co.kr


[나의 풀이]

class Solution {
    public int solution(int[] absolutes, boolean[] signs) {
        int answer = 0;
        int num = 0;	//배열 인덱스 조절용 변수
        //for-each 구문을 이용하여 배열을 바로 반복문으로 활용
        for(int i : absolutes){
            if(signs[num] == false){
                i = -1 * absolutes[num];
            }
            answer += i;
            num++;
        }
        return answer;
    }
}

 

[다른사람의 풀이]

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

 

[정리]

개인피셜 난이도 : ★☆☆☆☆

for-each를 써보고 싶은 마음에 썼지만 결국 변수만 더 추가된 꼴...

이런 경우엔 일반 for문을 사용하여 코딩하는게 좋은듯

또한 삼항 연산자를  사용함을써 줄수를 더욱 간결하게 했다 ㄷㄷ...

저번 블로그에서도 Stream에 대해서 말했듯,

삼항연산자 역시 때에 따라 간결하고 가독성은 좋으나, 역시 장점이 단점이 되는 경우가 생길 수 있다는점!

 

끝!

728x90
반응형