[프로그래머스/C++ 문제 풀이] Lv. 0 - 다음에 올 숫자

2024. 6. 25. 14:50·코딩테스트/프로그래머스 (Lv. 0)
목차
  1. 문제 설명
  2. 제한 사항
  3. 입출력 예
  4. 문제 풀이
  5. 정답 코드
728x90
반응형

문제 설명

등차수열 혹은 등비수열 common이 매개변수로 주어질 때, 마지막 원소 다음으로 올 숫자를 return 하도록 solution 함수를 완성해보세요.

제한 사항

  • 2 < common의 길이 < 1,000
  • -1,000 < common의 원소 < 2,000
    • common의 원소는 모두 정수입니다.
  • 등차수열 혹은 등비수열이 아닌 경우는 없습니다.
  • 등비수열인 경우 공비는 0이 아닌 정수입니다.

입출력 예

 

common result
[2, 4, 8] 16
[1, 2, 3, 4] 5

 

입출력 예 #1

  • [1, 2, 3, 4]는 공차가 1인 등차수열이므로 다음에 올 수는 5이다.

입출력 예 #2

  • [2, 4, 8]은 공비가 2인 등비수열이므로 다음에 올 수는 16이다.

문제 풀이

이번 문제는 입력받은 수열을 보고 등비수열인지 등차수열인지를 확인하면 되는 간단한 문제입니다.

 

등차수열의 경우 증가되는 공차가 항상 일정하므로,

1번째 요소와 2번째 요소의 차가 3번째 요소와 4번째 요소의 차와 동일한지 확인하여 체크 가능하며,

동일하지 않다면 이는 등비수열이기에 결과를 구해주는 방식으로 해결하였습니다.

정답 코드

더보기
#include <string>
#include <vector>

using namespace std;

int solution(vector<int> common) {
    int answer = 0;

    // 등차수열인지 체크하기
    if (common[1] - common[0] == common[2] - common[1])
    {
        // 등차수열이므로 해당 차이를 마지막 결과물에 더해주도록 합니다.
        int verse = common[1] - common[0];
        answer = common[common.size() - 1] + verse;
    }
    else
    {
        // 등비수열이므로 해당 공비를 마지막 결과물에 적용시켜주도록 합니다.
        int ratio = common[1] / common[0];
        answer = common[common.size() - 1] * ratio;
    }


    return answer;
}
728x90
반응형
저작자표시 비영리 변경금지 (새창열림)

'코딩테스트 > 프로그래머스 (Lv. 0)' 카테고리의 다른 글

[프로그래머스/C++ 문제 풀이] Lv. 0 - 최빈값 구하기  (0) 2024.06.29
[프로그래머스/C++ 문제 풀이] Lv. 0 - OX퀴즈  (0) 2024.06.29
[프로그래머스/C++ 문제 풀이] Lv. 0 - [PCCE 기출문제] 8번 / 창고 정리  (0) 2024.06.24
[프로그래머스/C++ 문제 풀이] Lv. 0 - 연속된 수의 합  (0) 2024.06.22
[프로그래머스/C++ 문제 풀이] Lv. 0 - 안전 지대  (0) 2024.06.21
  1. 문제 설명
  2. 제한 사항
  3. 입출력 예
  4. 문제 풀이
  5. 정답 코드
'코딩테스트/프로그래머스 (Lv. 0)' 카테고리의 다른 글
  • [프로그래머스/C++ 문제 풀이] Lv. 0 - 최빈값 구하기
  • [프로그래머스/C++ 문제 풀이] Lv. 0 - OX퀴즈
  • [프로그래머스/C++ 문제 풀이] Lv. 0 - [PCCE 기출문제] 8번 / 창고 정리
  • [프로그래머스/C++ 문제 풀이] Lv. 0 - 연속된 수의 합
리태s
리태s
게임 클라이언트 프로그래머 직무를 준비하며 공부한 내용을 정리한 블로그입니다.
    반응형
    250x250
  • 리태s
    LeeTaes 공부노트
    리태s
  • 전체
    오늘
    어제
    • Home (165)
      • 프로젝트 (20)
        • Isaac 3D (5)
        • TimelessAdventure (13)
        • FruitsPuzzle (2)
      • Game Programming (25)
        • C# (8)
        • Unity Engine (6)
        • Unreal Engine (8)
        • UE_Multiplayer (3)
      • 코딩테스트 (111)
        • 프로그래머스 (Lv. 0) (27)
        • 프로그래머스 (Lv. 1) (31)
        • 프로그래머스 (Lv. 2) (21)
        • 백준 (Study) (29)
        • 알고리즘 (3)
      • CS지식 (7)
        • 운영체제 (7)
      • 일상 (2)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    Summer/Winter Coding
    2022 kakao
    Algorithm
    fsoftobjectpath
    구현
    2019 kakao
    C++
    프로그래머스
    프로젝트
    프로세스
    Unreal Engine
    fruitspuzzle
    백준
    후기
    pcce 기출문제
    CS지식
    issac3d
    timelessadventure
    c#
    unity
    sesac
    tsoftobjectptr
    ai controller
    코딩테스트
    dataasset
    unrealengine
    project t.a develop
    청년취업사관학교
    delegate
    2018 kakao
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
리태s
[프로그래머스/C++ 문제 풀이] Lv. 0 - 다음에 올 숫자

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.