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

inbdni·2020년 9월 6일
6

프로그래머스

목록 보기
1/38
post-thumbnail

🌼 문제 설명

함수 solution은 정수 x와 자연수 n을 입력 받아, x부터 시작해 x씩 증가하는 숫자를 n개 지니는 리스트를 리턴해야 합니다. 다음 제한 조건을 보고, 조건을 만족하는 함수, solution을 완성해주세요.


🌼 제한 조건

  • x는 -10000000 이상, 10000000 이하인 정수입니다.
  • n은 1000 이하인 자연수입니다.

🌼 입출력 예

|x|n|answer|
|:---:|:---:|:---:|
|2|5|[2, 4, 6, 8, 10]|
|4|3|[4, 8, 12]|
|-4|2|[-4, -8]|



🌻 C++ 코드

#include <string>
#include <vector>

using namespace std;

vector<long long> solution(int x, int n) {
    vector<long long> answer;
    int i; 
    long long temp = x;
    
    answer.push_back(temp);
    for(i = 1; i < n; i++) {
        temp += x;
        answer.push_back(temp);
    }

    return answer;
}

처음에 이렇게 c++로 코드를 작성했다. 그런데 채점을 해보니 테스트케이스 14가 틀림으로 나왔다. 몇 없는 질문 목록을 보다가 c++을 채점 시스템이 의심된다는 의견을 보고 다른 언어로 해봐야겠다는 생각이 들었다. 그래서 python으로 다시 도전했다.

🌻 Python 코드

def solution(x, n):
    answer = []
    temp = x
    
    answer.append(temp); 
    for i in range (1, n):
        temp += x
        answer.append(temp);  
        
    return answer

통과다. 분명 두 코드의 로직이 같은 데 어느 부분이 틀린 걸까? c++ 정답자들의 코드를 봤다. 그중 하나를 그대로 복사해서 채점을 해보니 테스트 케이스 14가 실패로 떴다. 그럴 리가 없다고 생각하며 그다음 답안을 복사해서 채점을 했다. 결과는 같았다. 채점 시스템이 의심된다. Python으로 맞는 걸 확인했으니 다음 문제로 넘어가야겠다.

0개의 댓글