가장 값진 탑
시간 제한1초메모리 제한512 MB
높이가 다른 두 탑의 윗부분을 교환해 한 탑에 모을 수 있는 블록 값의 최대 합을 구합니다.
문제
야스는 블록으로 서로 다른 높이의 탑 여러 개를 쌓았습니다. 각 블록에는 정수가 하나씩 적혀 있습니다. 탑에 속한 블록들의 합이 클수록 그 탑의 가치는 높습니다. 야스는 가장 값진 탑을 만들고 싶지만, 이미 쌓아 놓은 탑들을 완전히 허물고 싶지는 않습니다. 그래서 그는 오직 다음 동작만 할 수 있다고 정했습니다. 높이가 서로 다른 두 탑을 고른 뒤,
- 더 높은 탑에서 위쪽 블록을, 더 낮은 탑을 이루는 블록 수만큼 정확히 걷어내어 (걷어낸 블록들의 순서는 그대로 유지한 채) 새로운 탑 하나를 만듭니다.
- 그런 다음 블록을 걷어낸 탑 위에 나머지 한 탑(더 낮았던 탑)을 통째로 얹습니다.
이렇게 하면 높이는 이전과 같지만 각 블록에 적힌 수의 배치는 달라질 수 있는 두 탑이 만들어집니다 (그림 참고).

그림: 탑 과 에 대한 야스의 동작 예시.
야스가 만들 수 있는 탑의 최대 가치를 구하세요.
입력
첫째 줄에 야스가 쌓은 탑의 개수를 나타내는 정수 () 이 주어집니다. 이어지는 개의 줄에 각 탑의 정보가 주어집니다. 번째 줄에는 번째 탑의 높이를 나타내는 정수 () 가 주어지고, 그 뒤에 개의 정수 () 가 주어집니다. 여기서 는 번째 탑에서 위에서 번째 블록에 적힌 수입니다. 모든 탑을 이루는 블록의 총 개수 는 을 넘지 않습니다.
출력
야스가 만들 수 있는 탑의 최대 가치를 정수 하나로 출력하세요.
힌트

설명: 야스는 2번 탑과 3번 탑으로 탑 을 만든 뒤, 이 탑과 1번 탑으로 탑 을 만들 수 있고, 그 가치는 입니다.