1 条题解
-
0
【问题分析】设f(i)为从城市1依次跳到城市i的距离之和,设g(i)为从城市i依次跳到城市n的距离之和,该问题的答案为min{f(i-1)+g(i+1)+dis[i-1,i+1]}。其中,dis[i-1,i+1]表示城市i-1到城市i+1的曼哈顿距离,f(i)和g(i)都可以用递推来预处理求出:f(i)=f(i-1)+dis[i-1,i],g(i)=g(i+1)+dis[I,i+1]。
也可以设f(i)表示从城市1依次跳到城市n,且跳过城市i的距离之和,sum表示从城市1依次跳到城市n的距离之和,则f(i)=min{sum-dis[I,i-1]-dis[i+1,i]+dis[i-1,i+1]。,
- 1
信息
- ID
- 408
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 6
- 标签
- 递交数
- 69
- 已通过
- 20
- 上传者