백준 13301 타일 장식물 JAVA 풀이 (피보나치, DP)

2026. 4. 8. 13:30·코테(Solved.ac + Programmers)
728x90

🔗 문제 링크

https://www.acmicpc.net/problem/13301


📌 문제 개요

정사각형 타일을 이어 붙여 도형을 만들 때,
타일의 변 길이가 특정 규칙(피보나치 형태)을 따른다.

이때 N번째 도형의 둘레 길이를 구하는 문제이다.


📌 접근 방법

  • 타일의 변 길이는 피보나치 수열
  • 도형의 가로, 세로는 연속된 피보나치 값으로 구성됨
  • 최종적으로 직사각형 형태가 되므로
둘레 = 2 × (가로 + 세로)

📌 핵심 아이디어

  • 피보나치 수열을 이용해 변 길이를 계산
  • 배열 없이 변수 2개로 최적화
a = 이전 값
b = 현재 값
 

반복하면서 갱신


📌 전체 코드

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int N = Integer.parseInt(br.readLine());

        long a = 1;
        long b = 1;

        for(int i = 2; i <= N; i++){
            long temp = a + b;
            a = b;
            b = temp;
        }

        System.out.println(2 * (a + b));
    }
}

📄 정리

  • 피보나치 수열을 활용한 문제
  • 배열 없이도 해결 가능 (공간 최적화)
  • 최종 답은 둘레 공식 적용 : 2 × (F(N) + F(N+1))
728x90

'코테(Solved.ac + Programmers)' 카테고리의 다른 글

[백준] 11576번 : Base Conversion (JAVA)  (0) 2026.04.12
백준 15688 수 정렬하기 5 JAVA 풀이 (정렬, 시간복잡도)  (0) 2026.04.09
백준 1769 3의 배수 JAVA 풀이 (문자열, 구현, 수학)  (0) 2026.04.07
백준 1236 성 지키기 JAVA 풀이 (구현, 그리디)  (0) 2026.04.06
백준 5800 성적 통계 JAVA 풀이 (정렬, 구현)  (0) 2026.04.06
'코테(Solved.ac + Programmers)' 카테고리의 다른 글
  • [백준] 11576번 : Base Conversion (JAVA)
  • 백준 15688 수 정렬하기 5 JAVA 풀이 (정렬, 시간복잡도)
  • 백준 1769 3의 배수 JAVA 풀이 (문자열, 구현, 수학)
  • 백준 1236 성 지키기 JAVA 풀이 (구현, 그리디)
PUSH → MERGE → DEPLOY
PUSH → MERGE → DEPLOY
데이터 흐름과 운영 자동화를 설계하는 백엔드 개발자
  • PUSH → MERGE → DEPLOY
    Coding Dongin
    PUSH → MERGE → DEPLOY
  • 전체
    오늘
    어제
    • MEUN
      • 코테(Solved.ac + Programmers)
      • BootCamp(JAVA)
      • JAVA
      • SpringBoot
      • JavaScript
      • JSP
      • DB(SQL)
      • React
      • HTML_CSS
      • jQuery
      • SCSS
      • GSAP
      • 설치 + 꿀팁
      • 정보처리기사 오답노트
      • 정보처리기사 기출문제
  • 블로그 메뉴

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

    • GIT
  • 공지사항

  • 인기 글

  • 태그

    백엔드개발자
    알고리즘
    dp
    구현
    프로그래머스
    정보처리기사
    정처기오답노트
    피보나치
    java
    백준
    정보처리기사 실기 기출문제
    정렬
    배열
    level0
    solved.ac
    자바
    브루트포스
    level1
    코딩테스트
    정처기
    정처기실기
    Level2
    실기
    기출문제
    문자열
    수학
    springboot
    시뮬레이션
    자료구조
    완전탐색
  • 최근 댓글

  • 최근 글

  • 250x250
  • hELLO· Designed By정상우.v4.10.4
PUSH → MERGE → DEPLOY
백준 13301 타일 장식물 JAVA 풀이 (피보나치, DP)
상단으로

티스토리툴바