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

Khung cửa

Đề bài

Mô tả

Cho các thanh gỗ bằng nhau, mỗi thanh dài n. Cần làm khung cho hai cánh cửa giống nhau, mỗi khung gồm:

  • Hai cạnh đứng (trái và phải), mỗi cạnh dài a;
  • Một cạnh trên dài b.

Như vậy tổng cộng cần 4 đoạn dài a2 đoạn dài b. Mỗi đoạn phải được lấy nguyên vẹn (liền mạch, không nối) từ một thanh gỗ; có thể cắt một thanh gỗ thành nhiều đoạn nhỏ hơn để dùng cho nhiều cạnh, miễn là mỗi cạnh là một đoạn liền.

Hãy tìm số lượng thanh gỗ tối thiểu cần dùng để làm xong khung cho hai cánh cửa.

Dữ liệu vào

  • Dòng thứ nhất chứa số nguyên n — độ dài mỗi thanh gỗ.
  • Dòng thứ hai chứa số nguyên a — độ dài cạnh đứng.
  • Dòng thứ ba chứa số nguyên b — độ dài cạnh trên.

Dữ liệu ra

In ra một số nguyên duy nhất — số lượng thanh gỗ tối thiểu cần dùng.

Ràng buộc

  • 1n1000
  • 1an
  • 1bn

Ví dụ

Input Output Giải thích
8
1
2
1 Tổng độ dài 6 đoạn là 4·1+2·2=8=n, vừa đúng một thanh gỗ.
5
3
4
6 Không đoạn nào ghép cặp được trong cùng một thanh dài 5, nên mỗi đoạn chiếm một thanh.
6
4
2
4 Một cách tối ưu: hai thanh chứa (4,2), hai thanh chứa (4) thừa 2 — tổng 4 thanh.
20
5
6
2 Một thanh chứa hai đoạn 5 và một đoạn 6 (1620); thanh còn lại chứa hai đoạn 5 và một đoạn 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