首页 > 试题广场 >

计算任务时间

[编程题]计算任务时间
现在用a-z的字母表示变量,并定义三种操作:
a=LOAD(),表示加载数据到变量a
c=CALCULATE(a,b),表示根据变量a和变量b计算出c,CALCULATE可以接收一到多个输入变量。
DUMP(c),表示输出变量c。
只有当操作里依赖的变量都完成后,才能执行这个操作。没有依赖关系的操作可以并行进行。
在输入中出现的操作顺序可能是被打乱的,并不是真正执行时候的顺序。
一个任务由多个操作组成,并只有一个DUMP操作,如果列出一个任务里的所有的操作,并给出每个操作所需要的时间,要求计算直到DUMP操作完成所需要的时间。

输入描述:
输入由多行组成,每行前半部分是描述操作,后半部分描述这个操作所需要的时间,用|分隔。例如a=LOAD()|3,表示操作为a=LOAD(),这个操作所需时间为3。
操作所需要的时间是1-100的正整数。
操作总共有三种:
a=LOAD(),表示加载数据到变量a
c=CALCULATE(a,b),表示根据变量a和变量b计算出c,CALCULATE可以接收一到多个输入变量,用逗号分隔。
DUMP(c),表示输出变量c
变量用a-z的字母表示。一个输入里有且仅有一个DUMP操作。
操作出现的顺序可能是被打乱的,比如DUMP(a)可能出现在a=LOAD()之前,并不一定按照真正执行的顺序出现。


输出描述:
要求输出一个正整数,是直到DUMP操作完成时所需要的时间和
示例1

输入

a=LOAD()|1
DUMP(c)|1
c=CALCULATE(a,b)|3
b=LOAD()|2

输出

6

备注:
任务里的操作不会成环,即这个任务是确定可以完成

这道题你会答吗?花几分钟告诉大家答案吧!