TIL | [알고리즘] 없는 숫자 더하기(Java)

hyemin·2022년 3월 11일
0

알고리즘

목록 보기
6/38
post-thumbnail

THINKING

  1. 배열에 없는 숫자를 더한다 = 1:9의 합에서 배열에 있는 숫자를 뺀다
    • 1 ~ 9 합 :for (int i = 1; i < 10 ; i++) { a+=i;}
    • 배열 숫자 합 : for (int i : numbers) { answer+=i;}

내 풀이

class Solution {
    public int solution(int[] numbers) {
        int a = 0;
        int answer = 0;
        for (int i = 1; i < 10 ; i++) {
            a+=i;
        }
 
        for (int i : numbers) {
            answer+=i;
        }
        return a - answer;
    }
}

좋아요 많이 받은 풀이

class Solution {
    public int solution(int[] numbers) {
        int a = 0;
        int answer = 0;
        for (int i = 1; i < 10 ; i++) {
            a+=i;
        }
        for (int i : numbers) {
            a-=i;
        }
        return a;
    }
}

다른 풀이

import java.util.Arrays;
import java.util.stream.IntStream;
 
class Solution {
    public int solution(int[] numbers) {
             return 45-Arrays.stream(numbers).sum(); 
        }
}

배운 것

나는 다 더해서 빼는 것만 생각했는데, 반복하면서 빼면 조금이라도 코드 수를 줄일 수 있다....!

Arrays.stream()

배열에서 스트림을 생성할 때 사용한다.

사용법

Arrays.stream(numbers).sum(); 

배열 numbers를 돌며 값을 더하게 된다.

0개의 댓글

관련 채용 정보