日志

H学校开展程序设计实训项目,项目共包括n个模块(编号为1~n),按照编号顺序依次进行培训。y老师决定把程序设计实训项目交给dr公司的三位讲师ta, tb, tc讲授,每个模块可以由其中一位讲师讲授,需要对应的培训费。y老师考虑到讲师培训辛苦,所以决定相邻两个模块不能由同一位讲师讲授,即:第1与第2个模块不是同一位讲师,第n个模块与第n-1个模块不是同一位讲师,第i< < n)个模块与第i - 1个模块和第i + 1个模块不是同一个位讲师。现在要将项目的n个模块安排合适的讲师,问所有的模块都安排合适的讲师之后最少的总培训费?

#include <iostream>

#include <algorithm>

using namespace std;

int main() {

int n;

cin>>n;

int a[n][3];

for (int i = 0; i < n; i++) {

cin>>a[i][0]>>a[i][1]>>a[i][2];

}

int dp[n][3];

dp[0][0] = a[0][0];

dp[0][1] = a[0][1];

dp[0][2] = a[0][2];

for (int i = 1; i < n; i++) {

dp[i][0] = min(dp[i-1][1], dp[i-1][2]) + a[i][0];

dp[i][1] = min(dp[i-1][0], dp[i-1][2]) + a[i][1];

dp[i][2] = min(dp[i-1][0], dp[i-1][1]) + a[i][2];

}

int result = min({dp[n-1][0], dp[n-1][1], dp[n-1][2]});

cout<<result;

return 0;

}

全部评论

相关推荐

码农索隆:这种hr,建议全中国推广
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-01 11:47
点赞 评论 收藏
分享
牛客84809583...:举报了
点赞 评论 收藏
分享
后来123321:别着急,我学院本大二,投了1100份,两个面试,其中一个还是我去线下招聘会投的简历,有时候这东西也得看运气
无实习如何秋招上岸
点赞 评论 收藏
分享
07-04 16:00
门头沟学院 Java
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务