[프로그래머스] x만큼 간격이 있는 n개의 숫자

이한솔·2023년 9월 25일
0
post-thumbnail

✨️문제 설명

: 정수 x와 자연수 n을 입력받아, x부터 시작해 x씩 증가하는 숫자를 n개 지니는 리스트를 반환

->자세한 내용 보러가기

🎲자바 풀이

class Solution {
    public long[] solution(int x, int n) {
        long[] answer = new long[n];
        answer[0] = x;
        for(int idx = 1; idx < n; idx++){
            answer[idx] = answer[idx - 1] + x;
        }
        return answer;
    }
}

문제 설명

: n개의 숫자를 지니는 배열을 리턴해야하므로 n 길이의 배열을 선언 -> 가장 첫번째 배열에 x를 넣고 그 다음부터 인덱스가 n보다 작을 때까지 x를 더한다

다른 사람 풀이

import java.util.stream.LongStream;
class Solution {
  public long[] solution(int x, int n) {
      return LongStream.iterate(x, i->i+x).limit(n).toArray();
  }
}

: LongStream.iterate(x, i -> i + x) : x부터 시작하여 i를 i + x로 계속 증가하는 LongStream을 생성
: limit(n) : 스트림에서 반환할 개수를 제한 -> 입력으로 주어진 n만큼의 요소만을 선택해 반환
: toArray() : 스트림의 요소들을 배열로 변환

profile
개인 공부용

0개의 댓글