ch_5102 Mobile Service
时间:2019-11-05
本文章向大家介绍ch_5102 Mobile Service,主要包括ch_5102 Mobile Service使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
这题太tm毒瘤了
边界一大堆
优化:优化状态,减少一维
题解:https://www.luogu.org/blog/Tony102/solution-sp703
#include<iostream> #include<cstdio> #define ri register int #define u int namespace opt { inline u in() { u x(0),f(1); char s(getchar()); while(s<'0'||s>'9') { if(s=='-') f=-1; s=getchar(); } while(s>='0'&&s<='9') { x=(x<<1)+(x<<3)+s-'0'; s=getchar(); } return x*f; } } using opt::in; #include<cstring> #define NN 1005 #define MM 1005 namespace mainstay { u N,M,c[NN][NN],a[NN],f[2][205][205]; inline void solve() { N=in(),M=in(); for(ri i(1); i<=N; ++i) { for(ri j(1); j<=N; ++j) { c[i][j]=in(); } } for(ri i(1); i<=M; ++i) a[i]=in(); memset(f,0x3f,sizeof(f)); f[0][1][2]=0,a[0]=3; for(ri x(1); x<=M; ++x) { u i(x&1); std::memset(f[i],0x3f,sizeof(f[i])); for(ri j(1); j<=N; ++j) { if(j!=a[x-1]) for(ri k(1); k<=N; ++k) { if(k!=j&&k!=a[x-1]) { if(j!=a[x]&&k!=a[x]) f[i][j][k]=std::min(f[i^1][j][k]+c[a[x-1]][a[x]],f[i][j][k]); if(k!=a[x]&&a[x]!=a[x-1]) f[i][a[x-1]][k]=std::min(f[i^1][j][k]+c[j][a[x]],f[i][a[x-1]][k]); if(j!=a[x]&&a[x]!=a[x-1]) f[i][j][a[x-1]]=std::min(f[i^1][j][k]+c[k][a[x]],f[i][j][a[x-1]]); } } } u _y(0); } u ans(0x7fffffff); for(ri i(1); i<=N; ++i) for(ri j(1); j<=N; ++j) if(i^j&&i^a[M]&&j^a[M]) ans=std::min(ans,f[(M&1)][i][j]); std::cout<<ans; } } int main() { //freopen("x.txt","r",stdin); std::ios::sync_with_stdio(false); mainstay::solve(); }
原文地址:https://www.cnblogs.com/ling-zhi/p/11801735.html
- 【框架】为降低机器学习开发者门槛,苹果发布了Turi Create框架
- 新闻数据库分表案例
- 建立智能的解决方案:将TensorFlow用于声音分类
- Plugin Hook 设计与实现
- 数据与应用程序间通信·UDP Socket
- Java 数据类型转换
- Spring boot with Scheduling
- Spring Properties 文件读取
- 【学术】你真的知道什么是随机森林吗?本文是关于随机森林的直观解读
- Spring boot 将 Session 放入 Redis
- 【教程】估算一个最佳学习速率,以更好地训练深度神经网络
- SNS 数据库设计
- CentOS7 下 MySQL 5.7 重置root密码
- 通过简单的线性回归理解机器学习的基本原理
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法