putnik

可将旅行商的路线看作是从n - 1号点出发, 跳着到0号点, 再折返走完之前跳过的点. 想到这个, 暴力就可以得50分.
正解是DP.
f[i][j](i > j)表示, 从i开始跳, 并返回至j所需要的最小花费(从定义上i, j可互换)
因而得到递推式:
f[i + 1][i] = min(f[i + 1][i], f[i][j] + w[j][i + 1])
f[i + 1][j] = min(f[i + 1][j], f[i][j] + w[i][i + 1])
#include<iostream>
#include<string.h>
#include<algorithm>
using namespace std;
const int maxN = 1500;
int w[maxN][maxN];
int f[maxN][maxN];
int main()
{
freopen("putnik.in", "r", stdin);
freopen("putnik.out", "w", stdout);
ios::sync_with_stdio(false);
int n;
cin >> n;
for(int i = 0; i < n; i ++)
for(int j = 0; j < n; j ++)
cin >> w[i][j];
memset(f, 127, sizeof(f));
f[0][0] = 0;
for(int i = 0; i < n; i ++)
for(int j = 0; j <= i; j ++)
if(f[i][j] < (int)2e9)
f[i + 1][i] = min(f[i + 1][i], f[i][j] + w[j][i + 1]),
f[i + 1][j] = min(f[i + 1][j], f[i][j] + w[i][i + 1]);
int ans = (int)2e9;
for(int i = 0; i < n; i ++)
ans = min(ans, f[n - 1][i]);
cout << ans;
}
putnik的更多相关文章
随机推荐
- SQL登录注册练习
/class User package com.neusoft.bean; public class User { private int password; private String name; ...
- excel日期格式取年份
具体思路:先将日期格式更改为常规格式,再取常规格式的前4位数字 例如:A1==1981/12/22 第一步B1=TEXT(A1,"emd") 第二步C1=LEFT(B1,4) 结束
- POJ:2586-Y2K Accounting Bug
Y2K Accounting Bug Time Limit: 1000MS Memory Limit: 65536K Description Accounting for Computer Machi ...
- 【草稿】JS中如何操作时间
如何声明时间变量 如何设置时间变量的时.分.秒.毫秒 如何根据字符串变量,声明指定的时间变量 如何比较两个时间变量 代码如下: $(function () { var d = new Date(); ...
- ReportViewer部分使用总结
最近winform上使用ReportViewer做报表,因为之前没弄过,所以遇到了很多问题,现在总结一下. 一.运行环境 .net环境:4.0 开发工具:vs2010 二.开发步骤 第一步,在winf ...
- 是男人就过 8 题--Pony.AI A AStringGame
链接:https://www.nowcoder.com/acm/contest/92/A来源:牛客网 AStringGame 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 26214 ...
- 【整理】python中re的match、search、findall、finditer区别
match 从首字母开始开始匹配,string如果包含pattern子串,则匹配成功,返回Match对象,失败则返回None,若要完全匹配,pattern要以$结尾. search 若string中包 ...
- springboot集成shiro——登陆记住我
在shiro配置类中增加两个方法: com.resthour.config.shrio.ShiroConfiguration /** * cookie管理对象 * @return */ @Bean p ...
- wpf Combobox模拟键盘按键
private void RadComboBox_PreviewKeyUp(object sender, KeyEventArgs e) { try { var obj = (RadComboBox) ...
- PTA 11-散列4 Hard Version (30分)
题目地址 https://pta.patest.cn/pta/test/16/exam/4/question/680 5-18 Hashing - Hard Version (30分) Given ...