Hint chi tiết 2
Hint 1: Đừng nhìn vào hình vuông trước
Hãy nhìn các đoạn đất được tạo ra.
Ví dụ:
Chiều cao = 6
Có đường ngang tại hàng 3
Ta có:
1 ----- 3 ----- 7
Các đoạn:
3 - 1 = 2
7 - 3 = 4
Vậy chiều cao đã bị chia thành:
2 và 4
Hint 2: Hình vuông cạnh k phải thế nào?
Giả sử có đoạn dài:
4
Muốn lát kín bằng hình vuông cạnh:
k = 2
thì:
4 = 2 + 2
Lát được.
Nếu:
k = 3
thì:
4 không chia hết cho 3
Sẽ bị dư.
Không lát kín được.
Hint 3: Điều kiện của k
Nếu đoạn dài:
2
4
6
thì:
k phải chia hết cho 2
k phải chia hết cho 4
k phải chia hết cho 6
Tức là:
k là ước chung của tất cả các đoạn
Hint 4: Học sinh THCS nhớ tới gì?
Khi nghe:
Ước chung
thì nghĩ tới:
UCLN
Ví dụ:
2
4
6
Ta có:
UCLN(2,4,6)=2
Hint 5: Sau khi có UCLN
Giả sử:
UCLN = 12
Các giá trị k hợp lệ là:
1
2
3
4
6
12
vì tất cả đều là ước của 12.
Hint 6: Vì sao chỉ cần tìm UCLN?
Ví dụ:
2
4
6
Ước của 2:
1 2
Ước của 4:
1 2 4
Ước của 6:
1 2 3 6
Ước chung:
1 2
Mà:
UCLN = 2
Ước của 2:
1 2
Giống hệt.
Hint 7: Các đoạn lấy ở đâu?
Đừng quên thêm biên.
Ví dụ:
n = 6
có đường ngang:
3
Ta thêm:
1
7
được:
1 3 7
Các đoạn là:
3 - 1 = 2
7 - 3 = 4
Hint 8: Làm tương tự cho cột
Ví dụ:
m = 8
đường dọc:
3
Ta có:
1 3 9
Các đoạn:
2
6
Hint 9: Tính UCLN tất cả đoạn
Ví dụ:
ngang:
2
4
dọc:
2
6
Ta lấy:
UCLN(2,4,2,6)
Kết quả:
2
Hint 10: Tìm mọi ước của UCLN
Nếu:
g = 2
Ước:
1
2
Output:
2
1 2
Công thức cuối cùng
Bước 1
Tạo các đoạn:
Python
doan = vi_tri_hien_tai - vi_tri_truoc
Bước 2
Tính:
Python
g = gcd(g, doan)
Bước 3
Tìm:
Python
i là ước của g
khi:
Python
g % i == 0
Câu thần chú để nhớ khi đi thi
Chia đất
→ tính độ dài các đoạn
Các hình vuông phải lát kín
→ cạnh hình vuông phải chia hết mọi đoạn
Chia hết mọi đoạn
→ tìm UCLN
Các đáp án
→ tất cả các ước của UCLN
Chỉ cần nhớ 4 dòng trên là tự suy ra được lời giải của bài.
Giao lưu contest
Bình luận