음양 더하기

Cloudman·2022년 11월 18일
0

항해99 자바 문제

목록 보기
8/33

위가 문제이고 아래가 나의 풀이

class Solution {
    public int solution(int[] absolutes, boolean[] signs) {
        int answer = 0;
        
        int sum = 0;    // 합을 구할 변수
        
        // 두 배열의 길이가 같기 때문에 absolutes 길이 만큼 해서 반복문 돌리기
        // 조건문으로 signs 가 false 이면 -1 을 곱해서 음수로 만들어주고 양수는
        // 그냥 그대로 넘긴다. 이후 sum 에다 대입 연산자로 총 합산을 구해주고 리턴
        for (int i = 0; i < absolutes.length; i++) {
            if (signs[i] == false) {
                absolutes[i] = absolutes[i] * -1;
            }
            sum += absolutes[i];
        }
        answer = sum;
        
        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;
    }
}

위 처럼 삼항 연산자가 쓰이면 더 간단하게도 가능하다 !!!

profile
코린이

0개의 댓글