博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
解题报告 『[USACO5.4]Canada Tour(线性动规)』
阅读量:4353 次
发布时间:2019-06-07

本文共 1147 字,大约阅读时间需要 3 分钟。

此题让我知道了快读和取消同步后的cin貌似不能一起用?

算了,反正取消同步后的cin也挺快的。

 

代码实现如下:

#include 
using namespace std;#define rep(i, a, b) for (register int i = (a); i <= (b); i++)const int maxm = 1e2 + 5;;int n, v, ans = 1;int dp[maxm][maxm];bool vis[maxm][maxm];string s, s1, s2;map
map_city;int MAX(int a, int b) {
return a > b ? a : b;}void write(int x) { if (x < 0) { putchar('-'); x = -x; } if (x > 9) write(x / 10); putchar(x % 10 + '0');}int main() { std::ios::sync_with_stdio(false); std::cin.tie(0); cin >> n >> v; rep(i, 1, n) { cin >> s; map_city[s] = i; } rep(i, 1, v) { cin >> s1 >> s2; vis[map_city[s1]][map_city[s2]] = 1; vis[map_city[s2]][map_city[s1]] = 1; } dp[1][1] = 1; rep(i, 1, n - 1) rep(j, i + 1, n)//i,j之后会对换,所以j就直接从i + 1开始. rep(k, 1, j - 1) if (vis[j][k] && dp[i][k]) dp[i][j] = dp[j][i] = MAX(dp[i][j], dp[i][k] + 1); rep(i, 1, n) if (vis[i][n]) ans = MAX(ans, dp[i][n]); write(ans); return 0;}
View Code

转载于:https://www.cnblogs.com/Kirisame-Marisa/p/10811829.html

你可能感兴趣的文章
webpack构建react应用三:使用webpack Loaders 模块加载器(一)
查看>>
Java JDBC
查看>>
走势终完美 --执子之手
查看>>
补全左括号
查看>>
javascript中关于坐标 大小 的描述
查看>>
8086CPU各寄存器的用途
查看>>
AngularJs中,如何在render完成之后,执行Js脚本
查看>>
Nginx 防盗链
查看>>
如何讓Android系統顯示CJK擴展區漢字
查看>>
Android 下拉选择绑定Value和Text值
查看>>
HTML+CSS小结
查看>>
Android防止按钮连续点击
查看>>
利用Coco2dx提取plist中的图片
查看>>
ElasticSearch Mapping中的字段类型
查看>>
数据库中主键和外键的设计原则
查看>>
怎样理解阻塞非阻塞与同步异步的区别?
查看>>
Xcode 警告信息处理:Format string is not a string literal (potentially insecure)
查看>>
关于jQuery表单校验的应用
查看>>
matplotlib----初探------5直方图
查看>>
jquery之ajax
查看>>