当前位置:网站首页>2022牛客多校训练第二场 L题 Link with Level Editor I
2022牛客多校训练第二场 L题 Link with Level Editor I
2022-08-05 00:18:00 【Rain Sure】
题目链接
题目大意
大概意思就是,给了我们 n n n个世界,每个世界有 m m m个点,每个世界中存在若干条有向边,会将某些点连起来。我们需要从1号点出发,最终走到 m m m号点,每次可以选择在当前世界的当前点选择一条有向边出发走到另一个点,或者直接传送到下一个世界,题目问我们最小需要选择几个世界可以实现从1走到 m m m。
题解
考虑DP,设 f i , j f_{i, j} fi,j表示在第 i i i个世界走到 j j j点,最晚从哪个世界出发,由于题目卡内存了,我们需要使用滚动数组优化一下。并且还需要注意状态转移过程中的一些细节,假如当前的有向边是从1号点出发的,我们需要将当前最晚的世界写成 i i i。具体看代码
#include<iostream>
#include<cstring>
using namespace std;
const int maxn = 2010, inf = 0x3f3f3f3f;
int f[2][maxn];
int n, m;
int main()
{
cin >> n >> m;
memset(f, -0x3f, sizeof f);
int res = inf;
for(int i = 1; i <= n; i ++){
int num; cin >> num;
f[(i - 1) & 1][1] = i; // 尤其需要注意
for(int j = 1; j <= m; j ++) f[i & 1][j] = f[(i - 1) & 1][j];
while(num --) {
int a, b; cin >> a >> b;
f[i & 1][b] = max(f[i & 1][b], f[(i - 1) & 1][a]);
if(b == m) res = min(res, i - f[i & 1][m] + 1);
}
}
if(res >= inf / 2) cout << -1 << endl;
else cout << res << endl;
}
边栏推荐
猜你喜欢
could not build server_names_hash, you should increase server_names_hash_bucket_size: 32
Mysql_14 存储引擎
2 用D435i运行VINS-fusion
元宇宙:未来我们的每一个日常行为是否都能成为赚钱工具?
看图识字,DELL SC4020 / SCv2000 控制器更换过程
[CVA Valuation Training Camp] Financial Modeling Guide - Lecture 1
子连接中的参数传递
node使用redis
Will domestic websites use Hong Kong servers be blocked?
论文解读( AF-GCL)《Augmentation-Free Graph Contrastive Learning with Performance Guarantee》
随机推荐
First, the basic concept of reptiles
2022杭电多校 第三场 B题 Boss Rush
软件测试面试题:LoadRunner 分为哪三个模块?
Modelers experience sharing: model study method
10 种常见的BUG分类
英特尔WiFi 7产品将于2024年亮相 最高速度可达5.8Gbps
翁恺C语言程序设计网课笔记合集
软件测试面试题:负载测试、容量测试、强度测试的区别?
TinyMCE禁用转义
【LeetCode】矩阵模拟相关题目汇总
KT148A voice chip ic working principle and internal architecture description of the chip
The master teaches you the 3D real-time character production process, the game modeling process sharing
NMS原理及其代码实现
leetcode: 266. All Palindromic Permutations
leetcode:267. 回文排列 II
《MySQL入门很轻松》第2章:MySQL管理工具介绍
Raw and scan of gorm
数据类型及输入输出初探(C语言)
Cython
.net(C#)获取两个日期间隔的年月日