본문 바로가기
It Study/코딩테스트 연습

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

by prlkt5200 2024. 9. 23.
반응형

 

 

class Solution {
    public long[] solution(int x, int n) {
       
        long[] arr = new long[n];
        long sum =0;
        for(int i =0; i<n; i++){
            sum+= x;
           arr[i] = sum; 
        }
        return arr;
    }
}

 

아래는 다른 사람의 풀이입니다.

확실히 스트림은 어색합니다. 많이 써보지를 않아서인데... 자주 활용할 수 있도록 해봐야겠습니다.

import java.util.stream.LongStream;
class Solution {
  public long[] solution(int x, int n) {
  
  //스트림 반복자를 활용한 풀이입니다.
  //x는 받아놓은 매개변수 값, i는 스트림에서 생성한 값입니다. 그리고,
  //이 반복자를 통해
  //1.x 2.x+x ..... 계속해서 반복하여 더하는 것입니다. 그리고 limit로 반복 횟수를 제한합니다.
  //마지막으로 배열로 출력합니다.
      return LongStream.iterate(x, i->i+x).limit(n).toArray();
  }
}

 

반응형