반응형
Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |
Tags
- 운전면허
- level4
- WSL
- WPF
- level2
- SQL
- c#
- Python
- programmers
- 보통2종
- 스프링부트
- 코테
- 코딩테스트
- 자바
- 백준
- 3일컷
- MVVM
- Java
- 1931번
- Spring Boot
- 일반화
- 씨샵
- 닫기버튼
- level3
- JPA
- 쿼리
- MySQL
- delegate
- springboot
- 프로그래머스
Archives
- Today
- Total
욱꾸미의 주꾸미 발
[코딩테스트] 백준(BAEKJOON) - 2×n 타일링 2(Java, 11727번) 본문
반응형
안녕하세요~
벌써 1월이 지나가고 2월이네요~
이제는 날씨도 제법 풀려 나름 따뜻해지고 있습니다.
이래저래 스프링도 공부하고 하느라 정신이 없네요 ㅠㅠ😂😂
오늘 풀어볼 문제 바로 시작하겠습니다.
https://www.acmicpc.net/problem/11727
11727번: 2×n 타일링 2
2×n 직사각형을 1×2, 2×1과 2×2 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2×17 직사각형을 채운 한가지 예이다.
www.acmicpc.net
문제입니다.
어떠신가요 다들 풀으셨나요?
저는 운좋게 규칙이 보여서 풀어낼 수 있었습니다.
그렇다면 저의 코드 남겨드리겠습니다.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Scanner;
public class Main {
public static void main(String[] args) throws NumberFormatException, IOException {
Scanner sc=new Scanner(System.in);
int num=sc.nextInt();
int[]dp=new int[num+1];
dp[1]=1;
if(num>1)
{
dp[2]=3;
for(int i=3;i<=num;i++)
dp[i]=((dp[i-2]*2)+dp[i-1])%10007;
}
System.out.println(dp[num]);
}
}
그렇습니다.
저는 이렇게 하나씩 그려가면서 규칙을 찾았습니다.

쓰다가 규칙을 찾아보자~ 라고 생각하던 중
f(n)=f(n-2)*2+f(n-1) 이라는 규칙을 찾게됐습니다.
찾은 규칙을 갖고 나머지 예시로 준 문제에 대입해보니 다행히 잘 맞네요!
이렇게 해서 해당 문제를 풀어냈습니다.
네 오늘은 간단하게 마무리하겠습니다.
감사합니다~ :D
반응형
'코딩테스트 > 백준' 카테고리의 다른 글
| [코딩테스트] 백준(BAEKJOON) - 가장 큰 증가 부분 수열(Java, 11055번) (0) | 2023.02.07 |
|---|---|
| [코딩테스트] 백준(BAEKJOON) - 스티커(Java, 9465번) (0) | 2023.02.04 |
| [코딩테스트] 백준(BAEKJOON) - 동전 1(Java, 2293번) (1) | 2023.02.01 |
| [코딩테스트] 백준(BAEKJOON) - LCS(Java, 9251번) (0) | 2023.01.31 |
| [코딩테스트] 백준(BAEKJOON) - 01타일(Java, 1904번) (0) | 2023.01.30 |