QOJ.ac

QOJ

Time Limit: 5 s Memory Limit: 512 MB Total points: 100

#5453. Mana Collection

Statistics

Note: The time limit for this problem is 5s, 2.5 times the default. The memory limit for this problem is 512MB, twice the default.

Bessie has recently taken an interest in magic and needs to collect mana for a very important spell. Bessie has $N$ ($1\le N\le 18$) mana pools, the $i$th of which accumulates $m_i$ mana per second ($1\le m_i\le 10^8$). The pools are linked by a collection of $M$ ($0\le M\le N(N-1)$) directed edges $(a_i,b_i,t_i)$, meaning that she can travel from $a_i$ to $b_i$ in $t_i$ seconds ($1\le a_i, b_i\le N$, $a_i\neq b_i$, $1\le t_i\le 10^9$). Whenever Bessie is present at a pool, she can collect all the mana stored at that location, emptying it. At time $0$, all mana pools are empty, and Bessie can select any pool to start at.

Answer $Q$ ($1\le Q\le 2\cdot 10^5$) queries, each specified by two integers $s$ and $e$ ($1\le s\le 10^9$, $1\le e\le N$). For each query, determine the maximum amount of mana Bessie can collect in $s$ seconds if she must be at mana pool $e$ at the end of the $s$th second.

INPUT FORMAT (input arrives from the terminal / stdin):

First line contains $N$ and $M$.

Next line contains $m_1,m_2,\dots, m_N$.

Next $M$ lines contain $a_i,b_i,t_i$. No ordered pair $(a_i,b_i)$ appears more than once in the input.

Next line contains $Q$.

Next $Q$ lines contain two integers $s$ and $e$.

OUTPUT FORMAT (print output to the terminal / stdout):

$Q$ lines, one for each query.

SAMPLE INPUT:

2 1
1 10
1 2 10
4
5 1
5 2
100 1
100 2

SAMPLE OUTPUT:

5
50
100
1090
First query: Bessie takes 5 mana from pool 1 after 5 seconds. Second query: Bessie takes 50 mana from pool 2 after 5 seconds. Third query: Bessie takes 100 mana from pool 1 after 100 seconds. Fourth query: Bessie takes 90 mana from pool 1 after 90 seconds and 1000 mana from pool 2 after 100 seconds.

SAMPLE INPUT:

4 8
50000000 100000000 20000000 70000000
1 2 20
2 1 50
2 3 90
1 3 40
3 1 10
4 1 25
1 4 5
4 3 70
3
8 3
1000000000 1
500000 4

SAMPLE OUTPUT:

160000000
239999988050000000
119992550000000
An example where Bessie is able to collect much larger amounts of mana.

SCORING:

  • Inputs 3-4: $N\le 10, Q\le 100$
  • Inputs 5-9: $N\le 10$
  • Inputs 10-14: $Q\le 100$
  • Inputs 15-17: $N = 16$
  • Inputs 18-20: $N = 17$
  • Inputs 21-24: No additional constraints.

Problem credits: Benjamin Qi

About Issues

We understand that our problem archive is not perfect. If you find any issues with the problem, including the statement, scoring configuration, time/memory limits, test cases, etc.

You may use this form to submit an issue regarding the problem. A problem moderator will review your issue and proceed it properly.

STOP! Before you submit an issue, please READ the following guidelines:

  1. This is not a place to publish a discussion, editorial, or requests to debug your code. Your issue will only be visible by you and problem moderators. Other users will not be able to view or reply your issues.
  2. Do not submit duplicated issues. If you have already submitted one, please wait for an moderator to review it. Submitting multiple issues will not speed up the review process and might cause your account to be banned.
  3. Issues must be filed in English or Chinese only.
  4. Be sure your issue is related to this problem. If you need to submit an issue regarding another problem, contest, category, etc., you should submit it to the corresponding page.

Active Issues 0

No issues in this category.

Closed/Resolved Issues 0

No issues in this category.