Google Code Jam 2018 - Graceful Chainsaw Jugglers

Xem PDF




Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Cobol, D, Groovy, Haskell, JS, Java, Kotlin, Lua, Node JS, OCaml, ObjectiveC, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 2100 Thời gian: 5.0s Bộ nhớ: 1G Input: bàn phím Output: màn hình

Bạn là quản lý của đoàn biểu diễn Graceful Chainsaw Jugglers và đang cố gắng thành công trong ngành tung hứng cưa máy đầy cạnh tranh. Bạn có vô hạn nghệ sĩ tài năng giống hệt nhau; mỗi người đều biết tung hứng với số lượng cưa máy bất kỳ. Để tổ chức một buổi diễn, bạn sẽ chọn một số nghệ sĩ rồi phân phát những chiếc cưa máy đỏ và xanh cho họ sao cho mỗi nghệ sĩ nhận ít nhất một chiếc. Chẳng hạn, một người có thể tung hứng hai cưa đỏ và ba cưa xanh, còn người khác chỉ tung hứng một cưa đỏ. Trong suốt buổi diễn, mỗi chiếc cưa chỉ do một nghệ sĩ sử dụng; các nghệ sĩ không chuyền cưa cho nhau, bởi chỉ riêng việc tung hứng chúng đã đủ khó rồi!

Theo nghiên cứu thị trường của bạn, khán giả vui nhất khi buổi diễn sử dụng càng nhiều nghệ sĩ và cưa máy càng tốt, nhưng họ cũng đòi hỏi sự đa dạng: không được có hai nghệ sĩ vừa dùng cùng số cưa đỏ cùng số cưa xanh.

Bạn có \(R\) cưa đỏ và \(B\) cưa xanh, và phải dùng hết tất cả trong buổi diễn. Số nghệ sĩ lớn nhất bạn có thể sử dụng mà vẫn đáp ứng yêu cầu của khán giả là bao nhiêu?

Dữ liệu vào

Dòng đầu tiên chứa số lượng bộ test \(T\); sau đó là \(T\) bộ test. Mỗi bộ test gồm một dòng chứa hai số nguyên \(R\)\(B\): lần lượt là số cưa đỏ và cưa xanh mà bạn phải sử dụng trong buổi diễn.

Dữ liệu ra

Với mỗi bộ test, in một dòng Case #x: y, trong đó x là số thứ tự bộ test (bắt đầu từ 1), còn y là số nghệ sĩ lớn nhất có thể dùng trong buổi diễn mà vẫn đáp ứng các yêu cầu nêu trên.

Ràng buộc

  • \(1 \le T \le 100\).
  • \(R + B > 0\).

Phân nhóm

Test Set 1 (Hiển thị):

  • \(0 \le R \le 50\).
  • \(0 \le B \le 50\).

Test Set 2 (Ẩn):

  • \(0 \le R \le 500\).
  • \(0 \le B \le 500\).

Điểm các phân nhóm

Mỗi Test Set tương ứng với một subtask trên LQDOJ. Bảng dưới đây giữ nguyên điểm chính thức của Google Code Jam và quy đổi tỷ lệ trên tổng điểm của bài.

Phân nhóm Điểm Google Code Jam Tỷ lệ điểm của bài
Test Set 1 7/24 29,17%
Test Set 2 17/24 70,83%

Ví dụ

Ví dụ 1

Input
2
2 0
4 5
Output
Case #1: 1
Case #2: 5
Giải thích

Trong trường hợp mẫu thứ nhất, chiến lược khả thi duy nhất là đưa cả hai cưa đỏ cho một nghệ sĩ.

Trong trường hợp mẫu thứ hai, một chiến lược tối ưu gồm:

  • một nghệ sĩ với một cưa đỏ;
  • một nghệ sĩ với hai cưa đỏ;
  • một nghệ sĩ với một cưa xanh;
  • một nghệ sĩ với ba cưa xanh;
  • một nghệ sĩ với một cưa đỏ và một cưa xanh.

Nguồn

Google Code Jam 2018, Vòng 2, bài Graceful Chainsaw Jugglers.

Nguồn chính thức trên Google Coding Competitions Archive, phát hành theo giấy phép Apache-2.0.

Bình luận

Mới nhất
Tải bình luận...

Không có bình luận nào.

Kỳ thi: