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

Tháp Vòng Hà Nội

Đề bài

Mô tả

Một xưởng sản xuất chiếc vòng cho trò chơi Tháp Hà Nội có n chiếc vòng trong kho. Vòng thứ i có bán kính trong ai, bán kính ngoài bi và chiều cao hi.

Cần chọn ra một tập con các vòng và xếp chúng lên nhau thành một tháp thỏa mãn:

  • Dãy bán kính ngoài (từ dưới lên) không tăng: chỉ được đặt vòng j lên vòng i nếu bjbi.
  • Vòng không bị lọt qua nhau: chỉ được đặt vòng j lên vòng i nếu bj>ai.

Hãy tìm tổng chiều cao lớn nhất của tháp có thể dựng được.

Dữ liệu vào

  • Dòng đầu chứa số nguyên n — số vòng trong kho.
  • n dòng tiếp theo, dòng thứ i chứa ba số nguyên ai, bi, hi — bán kính trong, bán kính ngoài và chiều cao của vòng thứ i.

Dữ liệu ra

Một số nguyên duy nhất — tổng chiều cao lớn nhất của tháp.

Ràng buộc

  • 1n100000
  • 1ai,bi,hi109
  • bi>ai

Ví dụ

Input Output Giải thích
3
1 5 1
2 6 2
3 7 3
6 Xếp cả ba vòng theo thứ tự (từ dưới lên): vòng 3, vòng 2, vòng 1. Tổng chiều cao =3+2+1=6.
4
1 2 1
1 3 3
4 6 2
5 7 1
4 Đặt vòng 1 lên vòng 2 cho tháp cao 1+3=4. Cũng có thể đặt vòng 3 lên vòng 4 nhưng chỉ cao 3.

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.47 awk 1.3.4 gcc 16.2.0 dotnet 10.0.400 g++ 16.2.0 g++-themis 16.2.0 g++17 16.2.0 g++20 16.2.0 g++23 16.2.0 clang++ 22.1.8 dmd 2.113.0 dart 3.13.2 gforth 0.7.3 gfortran 12.2.0 go 1.27.0 groovyc 5.1.1 javac 25.0.4 node 26.8.1 julia 1.12.7 kotlinc 2.4.10 lean 4.33.1 sbcl 2.2.9 lua 5.4.9 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.10 pike 8.0 swipl 9.0.4 pypy3 7.3.23 python3 3.14.7 racket 8.7 ruby 4.0.6 rustc 1.98.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 swiftc 6.3.3 tclsh 8.6 bun 1.4.0 deno 2.9.6 v 0.5.2 zig 0.16.0