Blowing Fuses (UVa 661)

View as PDF



Author:
Problem type
Points: 10 (p) Time limit: 2.0s Memory limit: 256M Input: stdin Output: stdout

Có thể bạn đã từng nghe thấy tình huống sau: bạn cắm rất nhiều thiết bị điện như lò nướng, tủ lạnh, lò vi sóng, máy tính, dàn âm thanh,… và bật tất cả lên cùng lúc. Nhưng ngay khi bạn bật TV, cầu chì bị nổ — vì tổng công suất mà các thiết bị tiêu thụ vượt quá khả năng chịu tải của cầu chì. Tất nhiên, đây là một tính năng an toàn tuyệt vời, giúp tránh cháy nổ do dây điện quá nhiệt. Tuy nhiên, việc phải xuống tầng hầm (hoặc chỗ bất tiện nào đó) để thay hoặc bật lại cầu chì thì thật phiền toái.

Điều mong muốn là có một chương trình có thể kiểm tra trước khi bật thiết bị điện xem tổng công suất tiêu thụ của các thiết bị đang chạy có vượt quá khả năng chịu tải của cầu chì (và khiến nó nổ) hay không — hay là vẫn an toàn để bật thêm thiết bị.

Problem Description

Bạn được giao nhiệm vụ mô phỏng hoạt động của một hệ thống điện trong phòng. Phòng có n thiết bị điện (đánh số từ 1 đến n). Mỗi thiết bị có mức tiêu thụ dòng điện riêng (tính bằng ampe).

Ban đầu, tất cả các thiết bị đều tắt. Khi bật thêm thiết bị, tổng dòng điện tiêu thụ của toàn bộ hệ thống sẽ tăng. Nếu tổng dòng điện vượt quá sức tải tối đa của cầu chì (c ampe), cầu chì sẽ bị đứt (blown fuse), và toàn bộ hệ thống sẽ ngừng hoạt động.

Bạn sẽ nhận được một danh sách các thao tác bật/tắt thiết bị (toggle). Nhiệm vụ của bạn là mô phỏng quá trình đó và xác định xem cầu chì có bị đứt hay không, đồng thời cho biết mức tiêu thụ dòng điện lớn nhất đạt được trong suốt quá trình vận hành.

Input Specification

Dữ liệu gồm nhiều bộ test. Vơiỗi bộ test:

  • Dòng thứ nhất chứa ba số nguyên dương n, m, c, trong đó:
    • n là số thiết bị điện (n ≤ 20),
    • m là số thao tác bật/tắt,
    • c là sức tải tối đa của cầu chì (đơn vị: ampe).
  • n dòng tiếp theo: dòng thứ i chứa một số nguyên dương \(c_i\) — lượng dòng điện tiêu thụ (ampe) của thiết bị thứ i.
  • m dòng cuối của bộ test: mỗi dòng chứa một số nguyên trong đoạn [1..n], mô tả thao tác toggle thiết bị tương ứng (đang tắt thì chuyển thành bật, đang bật thì chuyển thành tắt). Ban đầu tất cả thiết bị đều tắt.

Dữ liệu kết thúc bằng bộ test n = m = c = 0không xử lý bộ test này.

Output Specification

Với mỗi bộ test, in:

  • Dòng Sequence k (k là số thứ tự bộ test, bắt đầu từ 1),
  • Nếu trong quá trình thực hiện thao tác có thời điểm tổng dòng tiêu thụ vượt quá c, in Fuse was blown..
  • Ngược lại, in:
  • Fuse was not blown.
  • Maximal power consumption was X amperes. với X là giá trị tối đa của tổng công suất tiêu thụ đạt được trong chuỗi thao tác.

In thêm một dòng trống sau mỗi bộ test.

Constraints

  • \(n ≤ 20\).
  • Tất cả \(c_i\)c là số nguyên dương.
  • Các thao tác toggle luôn nằm trong [1..n].

Input Sample

2 2 10
5
7
1
2
3 6 10
2
5
7
2
1
2
3
1
3
0 0 0

Output Sample

Sequence 1
Fuse was blown.

Sequence 2
Fuse was not blown.
Maximal power consumption was 9 amperes.

Comments

There are no comments at the moment.