Lát gạch
View as PDF
Submit solution
Points:
0.06 (partial)
Time limit:
1.0s
Memory limit:
512M
Input:
stdin
Output:
stdout
Problem source:
Problem type
Allowed languages
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch
Cho một hình chữ nhật kích thước ~2*N~ ~(1 \le N \le 100)~. Hãy đếm số cách lát các viên gạch nhỏ kích thước ~1*2~ và ~2*1~ vào hình trên sao cho không có phần nào của các viên gạch nhỏ thừa ra ngoài, cũng không có vùng diện tích nào của hình chữ nhật không được lát.
Input
Gồm nhiều test, dòng đầu ghi số lượng test ~T~ ~(T \le 100)~.
~T~ dòng sau mỗi dòng ghi một số ~N~.
Output
Ghi ra ~T~ dòng là số cách lát tương ứng.
Sample Input
3
1
2
3
Sample Output
1
2
3
Comments
ta có:
số cách cho n == 1: 1
số cách cho n == 2: 2 (2 tấm doc hoặc 2 tấm ngang)
với n > 3: có 2 trường hợp đặt tại n
đặt 1 tấm dọc: lấy số cách của n - 1
đặt 2 tấm ngang: lấy số cách của n - 2
kết luận dp[n] = dp[n - 1] + dp[n - 2] là fibonacci
giống qhd với fibo
mình có linh cảm bài này có thể giải hoàn toàn bằng số học được không mình không biết tại mình chưa làm đc :)))
công thức truy hồi f(n - 1) + f(n - 2) thì là fibo đó
bài này code tính số lớn
This comment is hidden due to too much negative feedback. Show it anyway.
CODE THAM KHẢO https://vnspoj.github.io/problems/LATGACH
This comment is hidden due to too much negative feedback. Show it anyway.
This comment is hidden due to too much negative feedback. Show it anyway.