D6 I
Description
机房有很多机器,不同机器开机时间不同。已知开始站在1号机器,从一台机器走到另一台机器需要5秒,如何才能用最短的时间打开所有的机器。
Input
每组数据开头一个n表示机器数,接下来n个数表示1~n号机器所需开机时间,以秒为单位。0 < n <= 1000,开机时间为10~60秒。
Output
每组数据输出一行一个数,表示所有机器打开所需最短时间。
Sample Input
3 35 10 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | //欲哭无泪 #include<cstdio> #include<cstring> #include<algorithm> using namespace std; int main() { int a[1200]; int i,n,j; while ( scanf ( "%d" ,&n)!=-1) { for (i=0;i<n;i++) scanf ( "%d" ,&a[i]); int max=*max_element(a,a+n); int ans=0; sort(a+1,a+n); for (i=n-1,j=1;i>=1;i--,j++) a[i]=a[i]+j*5; int max2=*max_element(a,a+n); ans+=max2; printf ( "%d\n" ,ans); } } /*贪心策略:第一台机器不移动,后面的机器按从大到小的顺序排序 开第一台机器的时间就是a[0],开第二台用时:a[1]+1*5,第三台:a[2]*2*5,以此类推,易证明到该策略的正确性 */ |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧