Bob bán thẻ nhớ

Đề bài

Mô tả

Bob bán thẻ nhớ trong n ngày làm việc. Trong mỗi ngày, một trong hai sự kiện sau xảy ra:

  • Một khách hàng đến và hỏi mua thẻ nhớ có dung lượng 2x MB. Nếu Bob đang có thẻ nhớ dung lượng đúng 2x MB, anh ấy bán nó và nhận về 2x berllar.
  • Bob thắng một cuộc thi lập trình và được tặng thẻ nhớ dung lượng 2x MB. Bob có thể chọn giữ thẻ nhớ này hoặc tặng cho bạn.

Bob không bao giờ giữ quá một thẻ nhớ cùng lúc, vì sợ nhầm dung lượng và bán nhầm cho khách. Đảm bảo rằng với mỗi giá trị x có tối đa một khách hàng muốn mua thẻ nhớ 2x MB.

Biết trước toàn bộ thông tin về các khách hàng và các giải thưởng trong n ngày, hãy giúp Bob tính số tiền lớn nhất anh ấy có thể kiếm được nếu hành động tối ưu.

Dữ liệu vào

  • Dòng đầu tiên chứa số nguyên n — số ngày làm việc của Bob.
  • n dòng tiếp theo, mỗi dòng có dạng sell x hoặc win x:
    • sell x — ngày này một khách đến hỏi mua thẻ nhớ 2x MB.
    • win x — ngày này Bob được tặng thẻ nhớ 2x MB.

Dữ liệu ra

In ra một số nguyên duy nhất — số tiền lớn nhất Bob có thể kiếm được (tính bằng berllar).

Ràng buộc

  • 1n5000
  • 0x2000
  • Với mỗi x có tối đa một dòng sell x.

Ví dụ

Input Output Giải thích
7
win 10
win 5
win 3
sell 5
sell 3
win 10
sell 10
1056 Bob giữ thẻ 25 MB ngày 2, bán ngày 4 (được 32). Sau đó giữ thẻ 210 MB ngày 6, bán ngày 7 (được 1024). Tổng: 32+1024=1056.
3
win 5
sell 6
sell 4
0 Khách chỉ hỏi mua 2624, nhưng Bob chỉ có 25. Không bán được gì.

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