본문 바로가기
JAVA/Programmers

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

by tripleup 2023. 7. 31.
728x90
반응형

[프로그래머스] 코딩테스트 연습 -> 연습문제 -> x만큼 간격이 있는 n개의 숫자

https://school.programmers.co.kr/learn/courses/30/lessons/12954


해결 과정

 

먼저 배열 answer 의 길이를 n으로 지정해준다.

 

그리고 반복문을 돌면서 answer[i]에 x * (i+1)을 넣어주면 된다.

 

처음에는 단순히 answer[i] = x * (i+1); 로 진행하였는데 테스트 13,14에서 자꾸 실패가 나왔다.

이유를 모르겠어 질문게시판을 통해 접근해보니, 형변환 문제 였다.

 

 

x의 경우 int형 매개변수 이기 때문에 long 배열 때문에, long으로의 형변환이 필요하다.

그래서 x앞에 (long)을 붙혀서  answer[i] = (long) x * (i+1) 으로 코드를 돌려보니 통과되었다.

물론 answer[i] =  x * (long)(i+1) 으로 코드를 돌려봐도 통과가 된다. 

 

소스 코드

 

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

 

(또 다른 답안)

 

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

 


728x90
반응형

댓글