UOJ Easy Round #7 短路
来源:互联网 发布:淘宝店铺图片怎么上传 编辑:程序博客网 时间:2024/05/19 13:30
题目描述
“第七套广播体操,原地踏步——走!”
众所周知,跳蚤们最喜欢每天早起做早操,经常天还没亮就齐刷刷地站在操场做着反复纵跳热热身。跳晚国在研制三星 note7 的时候注意到了这点,于是他们打算让炸弹更快地引爆,这样就可以消灭更多早起的跳蚤。
三星 note7 的主板可以看作是由 (2n+1)×(2n+1)个中继器构成的,某些中继器会有导线连在一起,左上角和右下角的中继器分别连着电源的正负极。
电流流过一根导线的时间可忽略不计,但当电流经过中继器时,会延缓一段时间再从中继器流出。这个时间只跟该中继器本身有关,我们把这段时间的长度称为中继器的延时值。
这些中继器由导线连接围成一个一个的层,同个层的中继器的种类都一样,而不同层的种类都不一样,可以发现总共有 n+1层。
跳晚们打算再加几根导线将某些中继器连接起来.凭借发达的重工业,他们能生产出无数条导线。但由于主板的限制,他们的导线只能和主板四周的边平行,且其长度只够连接相邻两个中继器。
现在他们想知道,他们改造的三星 note7 的电源正极流出的电流能在多短的时间到达电源负极从而造成短路,这样电池就会释放出巨大的能量摧毁跳蚤国的有生力量了。
请参考输入格式和样例配图来更好地理解题意。
输入格式
第一行一个正整数 n。
第二行 n+1个正整数
表示从内到外每层的中继器的延时值,单位为秒。其中,第 i行第 j列的中继器的延时值为(1≤i,j≤n,1≤i,j≤n)
输出格式
输出一行一个数表示改造后的最短引爆时间。
样例一
input
1
1 2
output
9
样例二
input
9
9 5 3 7 6 9 1 8 2 4
output
69
分析
我们可以发现,如果走最短路的话,我们只会向左和向下走。
如果要走的从外到内的第i层,
那么每一层都会经过一次。
我们就设
不难发现,最短路是有对称性的,
即,从矩阵的左上角到从外到内的第i层的左上角的最短路=从矩阵的右上角到从外到内的第i层的右上角的最短路。
那么,
从(i-1,i-1)到(i,i)就是向右走一步,向下走一步。
如果在上面的某一层向右走一步,也就是说将某一段最短路向右平移一个单位,就等同于向右走一步。
用
那么,$f_i= f_{i-1}+g_{i-1}
如何通过f来求得答案呢?
假设到达的最里层是i
那么,ans=
也就是,ans=
code(c++)
#include <cstdio>#include <algorithm>#include <cstring>#include <string.h>#include <cmath>#include <math.h> #define fo(i,a,b) for(i=a;i<=b;i++)using namespace std;int n,i,m;long long mi,ans,a[100003],sum,k;int main(){ scanf("%d",&n); fo(i,0,n) scanf("%d",&a[i]); mi=sum=a[n]; k=4*n+3; ans=(k-2)*a[n]; fo(i,2,n+1) { sum+=mi+a[n-i+1]; mi=min(mi,a[n-i+1]); ans=min(ans,(k-4*i)*a[n-i+1]+sum*2); } printf("%lld",ans);}
- UOJ Easy Round #7 短路
- UOJ Easy Round #7 天路 简单的近似算法
- [UOJ Easy Round #2]简要题解
- UOJ Easy Round #6 题解(待续)
- UOJ12暨(UOJ EASY ROUND 1)T3
- 【UOJ244】【UOJ #7】短路
- 【UOJ 244】【UER #7】短路
- UOJ #244. 【UER #7】短路
- 【UOJ】#244. 【UER #7】短路
- uoj A. 【UER #7】短路 (贪心)
- [UOJ#244][UER#7A]短路
- 【UOJ #244】【UER #7 A】短路
- UOJ 244 短路
- [UOJ#244][UER#7A]短路(贪心)
- UOJ #244. 【UER #7】短路 贪心+递推
- [UOJ 118][UOJ Round #8]赴京赶考
- [Contest] UOJ NOI Round #1
- [UOJ 74][UOJ Round #6]破解密码(乘法逆元)
- 【bzoj1084】【洛谷P2331】 【SCOI2005】 最大子矩阵
- 【egret】 输入文本的使用
- for循环版vacation
- Hive结构
- Linux网络服务(一)
- UOJ Easy Round #7 短路
- 京东方笔试题
- leetcode438. Find All Anagrams in a String
- 寒假安排 求n !中v因子的个数
- SSM搭建-Spring之IOC的注解注入(6)
- Activity完成任务finish后发送广播更新fragment的bug
- windows7 64位操作系统上使vs2010和vs2013能够并存的处理方法
- 1个月和项目经理线上沟通的在校办公纪录
- leetcode--climbing_stairs