본문 바로가기
코테연습

174. 2xn 타일링

by hxunz 2023. 1. 9.

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

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

1. 문제에 대한 이해

  • 우리가 풀어야 할 문제는 무엇인가?
    직사각형의 가로의 길이 n이 매개변수로 주어질 때, 이 직사각형을 채우는 방법의 수를 구하라
  • 주어진 자료는 무엇인가?
    n: 직사각형의 가로의 길이
  • 조건은 무엇인가?
    가로의 길이 n은 60,000이하의 자연수이다. 
    경우의 수를 1,000,000,007로 나눈 나머지를 return 하라.

2. 계획

  • 피보나치 수열을 구하는 식을 이용한다.
  • 배열에 초기값 0,1,2를 넣는다.
  • n번째 피보나치 수를 구하고 이를 1000000007로 나눈 나머지값을 리턴한다.

3. 실행

const solution = (n) => {
  const arr = [0, 1, 2];
  for (let i = 3; i <= n; i++) {
    arr[i] = (arr[i - 2] + arr[i - 1]) % 1000000007;
  }
  return arr[n];
};

test('solution', () => {
  expect(solution(4)).toEqual(5);
});

 

'코테연습' 카테고리의 다른 글

176. 과일장수 Javascript  (0) 2023.01.18
175. 스킬트리 Javascript  (0) 2023.01.09
173. 연속 부분 수열 합의 개수 Javascript  (0) 2023.01.06
172. 할인행사 Javascript  (0) 2023.01.05
171.귤 고르기 Javascript  (0) 2023.01.04

댓글