Informatica Online Judge

  빠른 라인 밀기 [2227 / 08B3]

Time Limit(Test case) : 1000(ms)
Number of users who solved : 0   Total Tried : 0


The Champion of this Problem (C++) : N/A
My Best Submission (C++) : N/A

[34th 류한주]
Writer ID : [gs16034]

Background

탱크 게임에서는 어떠한 라인을 얼마나 효율적으로 빨리 미느냐에 따라 승패가 좌우되기도 한다.
주어진 조건에서 적 전차들을 모두 파괴하는데 걸리는 최소 시간을 구해보자.

조건)
1. 한 전차는 일정한 데미지와 장전시간을 가지고 있다.
2. 전차마다 티어가 있는데, 티어가 높을수록 낮은 티어 탱크로부터 데미지를 덜 받는다고 한다.
어떤 전차는 자신보다 1티어 높은 탱크한테는 0.5배의 데미지를, 2티어 이상 높은 탱크한테는 아예 데미지를 입힐 수 없다고 한다.
3. 전투를 시작할 시점에는 아직 장전이 되지 않아있는 상태이다.

Input

첫 줄에 적 전차의 댓수 n이 주어진다. (2<=n<=3)

둘째 줄부터 적 전차의 티어와 체력이 전차별로 n줄에 걸쳐 주어진다. (1<=티어<=10, 1<=체력<=3000)

그 다음줄에 아군 전차의 댓수 k가 주어진다. (1<=k<=7)

그 다음줄부터 아군 전차의 티어와 데미지, 그리고 장전 시간이 전차별로 k줄에 걸쳐 주어진다. (1<=티어<=10, 1<=데미지<=1300, 1s<=장전시간<=30s)

Output

적 전차를 모두 파괴하여 라인을 깔끔히 만드는데 걸리는 최소 시간을 출력한다.
만약 적 전차를 모두 격파하는것이 불가능하다면 X를 출력한다.

IO Example

입력
2
1 100
2 200
3
1 50 3
2 80 4
3 120 5

출력
6

Submit : [C/C++] | [C++11] | [Obj-C] | [Java] | [Python]
Prob Analysis : [Problem Statistics] | [Solution]