题目链接:计算机软件能力认证考试系统
http://118.190.20.162/view.page?gpid=T159



最早开始时间是受之前依赖的项目限制,若无依赖,第一天即可开始。若有依赖,等待前置项目完成才能开始,累加即可。
最晚开始时间在能够完成所有项目的情况下输出。受限于是否有其他项目依赖于本项目,只选择用时最长的那一项做限制。从后往前遍历。yuashi[]用来记录最原始的每个项目耗时。
- #include
- using namespace std;
- #define N 366
- #define M 101
- int rely[M];
- int cost[M];
- int yuashi[M];
- int main()
- { int n,m;
- cin>>n>>m; //n days,m 项
- for(int i=1;i<=m;i++)
- {
- cin>>rely[i];
- }
- for(int i=1;i<=m;i++)
- { int c;
- cin>>c;
- cost[i]=cost[rely[i]]+c;
- yuashi[i]=c;
- }
- for(int i=1;i<=m;i++)
- {
- cout<<1+cost[rely[i]]<<" ";
- }
- cout<
- int max=0;
- for(int i=1;i<=m;i++)
- if(cost[i]>max) max=cost[i];
-
- if(max>n) ;
- else{
- for(int i=m;i>=1;i--){
- vector<int> berelyed;
- for (int j = 1; j <=m ; ++j) {
- if(rely[j]==i) berelyed.push_back(j);
- }
- int maxx=0;
- for (int j = 0; j
size() ; ++j) { - if(yuashi[berelyed[j]]>maxx) maxx=yuashi[berelyed[j]];
- }
- yuashi[i]+=maxx;
- }
- for(int i=1;i<=m;i++)
- {
- cout<
1-yuashi[i]<<" "; - }
- cout<
- }
- return 0;
- }
-
相关阅读:
【Java基础】Debug模式操作流程及案例:不死神兔、百钱百鸡
vue中同一个页面参数不同动态改变数据与标题
P4551 最长异或路径
C# 连接mysql 数据库
【广州华锐互动】灭火器使用VR教学系统应用于高校消防演练有什么好处?
52基于MATLAB的希尔伯特Hilbert变换求包络谱
TypeError: Cannot read properties of null (reading ‘insertBefore‘) vue项目报错
使用Kubeadm安装简单集群实战
3.运行项目
js表单autocomplete=‘off‘失效问题
-
原文地址:https://blog.csdn.net/weixin_62438655/article/details/132919479