#P1583. 2022.11.03-秋招-第二题-指令排序
-
ID: 36
Type: Default
1000ms
256MiB
Tried: 160
Accepted: 46
Difficulty: 6
Uploaded By:
TaZi
Tags>其他排序DFSBFS
2022.11.03-秋招-第二题-指令排序
题目内容
塔子哥最近在做一个工程,工程里面有很多的指令,假设指令 A : a=1 ;指令 B : b=2×a ;
A 指令define了变量 a , B 指令 use 了变量 a , 我们称 A 为 PRO(producer) , B 为 CON(consumer) ,他们之间的延时称为 latency
若 A 和 B 之间有多条依赖,取最大的 Iatency , PRIORITY(A) 表示指令 A 的优先级,其计算公式如下: PRIORITY(A)=PRIORITY(B)+latency ;
若 A 有多个 CON(B1,B2) ,其 lategcy 分别为 (L1,L2) : $PRIORITY(A)= max (PRIORITY(B1)+ L1, PRIORITY(B2)+L2)$ ;
若 A 没有 CON : PRIORITY(A)=0 ;
现有若干条指令(数据依赖没有环),编号分别为 1,2,...,n 现需要根据其 PRIORITY 对其进行排序,若两条指令的 PRIORITY 相同,则根据其编号先后进行排序。
输入描述
第一行:指令数 n (最大不超过 100 ), 关系行数 m (最大不超过 500 )
第 2一m+1 行: PRO−CON 关系,如 (1 2 4) 表示编号 1 和编号 2 指令存在 PRO−CON 关系,其 latency=4
输出描述
输出最终的排序编号: 1 2 3
样例
样例一:
输入
4 3
1 2 1
2 3 1
3 4 2
输出
1 2 3 4
样例二:
输入
3 3
1 2 1
3 1 2
3 2 1
输出
3 1 2
通知
扫码备注华为交流群~期待您的到来
- 湘ICP备2023007293号
- Worker 0, 67ms
- Powered by Hydro v4.14.1 Community