Tìm các cách cắt khác nhau của hình chữ nhật

Hải có một tờ giấy kích thước (m x n) . Hải muốn cắt tờ giấy đó thành các hình chữ nhật có diện tích bằng nhau. Hãy tìm và đưa ra các cách cắt khác nhau.

(Hai cách cắt khác nhau nếu diện tích của các hình chữ nhật sau khi cắt của mỗi trường hợp là khác nhau).

Ví dụ:

  • Với m=2, n=3 , thì countHowToCutPaper(m,n) = 4.
    Giải thích: có 4 cách cắt đó là:
    • Cắt thành 6 hình có diện tích 1.
    • Cắt thành 3 hình có diện tích 2.
    • Cắt thành 2 hình có diện tích 3.
    • Cắt thành 1 hình có diện tích 6.

Ai giúp e thuật toán bài này với ạ

Có vẻ không khác gì bài đếm số ước của m*n vì diện tích phải chia hết cho m*n.

4 Likes

E cũng làm đếm ước nhưng nó ko ra, tại số lớn quá nên nó mất nhiều thời gian và vượt quá thời gian quy định

Bạn có thể đếm cho m riêng và n riêng, bằng cách đưa về hai số nguyên tố cùng nhau :slight_smile:

4 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?