trang chủ / bài tập / jzzchoco

Jzzhu và Thanh Sô Cô La

Đề bài

Mô tả

Cho một thanh sô cô la hình chữ nhật gồm n×m ô vuông đơn vị. Bạn cần cắt thanh sô cô la đúng k lần. Mỗi nhát cắt phải thỏa mãn:

  • Nhát cắt là một đường thẳng, theo phương ngang hoặc phương dọc.
  • Nhát cắt đi dọc theo cạnh của các ô vuông đơn vị (không được cắt ngang qua bất kỳ ô vuông nào).
  • Nhát cắt nằm hoàn toàn bên trong thanh sô cô la, và tất cả các nhát cắt phải phân biệt.

Sau khi thực hiện k nhát cắt, thanh sô cô la được chia thành nhiều mảnh. Xét mảnh có diện tích nhỏ nhất (diện tích của một mảnh là số ô vuông đơn vị trong mảnh đó). Bạn muốn mảnh nhỏ nhất này có diện tích lớn nhất có thể.

Hãy tìm diện tích lớn nhất có thể của mảnh nhỏ nhất khi cắt đúng k nhát. Nếu không thể thực hiện đúng k nhát cắt, in ra 1.

Dữ liệu vào

Một dòng duy nhất chứa ba số nguyên n, m, k.

Dữ liệu ra

In ra một số nguyên duy nhất là đáp án. Nếu không thể cắt đúng k nhát, in ra 1.

Ràng buộc

  • 1n,m109
  • 1k2·109

Ví dụ

Input Output Giải thích
6 4 2 8 Cắt 2 nhát ngang chia chiều cao 6 thành 3 phần (mỗi phần cao 2), giữ nguyên chiều rộng 4. Mỗi mảnh có diện tích 2×4=8.
2 3 4 -1 Tối đa chỉ có thể cắt (21)+(31)=3 nhát phân biệt, không đủ 4 nhát.
3 4 1 6 Cắt 1 nhát dọc chia chiều rộng 4 thành 2 phần (mỗi phần rộng 2), giữ nguyên chiều cao 3. Mỗi mảnh có diện tích 3×2=6.

Bình luận

Không có bình luận tại thời điểm này.

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0