UVa 1025 - A Spy in the Metro

Python办公自动化:用python-docx打造专业级Word表格边框(附完整代码) 本文深入探讨了如何利用python-docx库精细控制Word表格边框,实现办公自动化。通过解析底层XML结构,提供了通用的`set_cell_border`函数,并附上完整代码,帮助用户轻松打造符合商业规范的专业级表格,提升报告、合同等文档的生成效率与视觉效果。 阅读详情

题目链接 UVa 1025 A Spy in the Metro

问题描述

Secret agent Maria was sent to Algorithms City to carry out an
especially dangerous mission. After several thrilling events we nd
her in the rst station of Algorithms City Metro, examining the time
table. The Algorithms City Metro consists of a single line with trains
running both ways, so its time table is not complicated. Maria has an
appointment with a local spy at the last station of Algorithms City
Metro. Maria knows that a powerful organization is after her. She also
knows that while waiting at a station, she is at great risk of being
caught. To hide in a running train is much safer, so she decides to
stay in running trains as much as possible, even if this means
traveling backward and forward. Maria needs to know a schedule with
minimal waiting time at the stations that gets her to the last station
in time for her appointment. You must write a program that nds the
total waiting time in a best schedule for Maria. The Algorithms City
Metro system has N stations, consecutively numbered from 1 to N .
Trains move in both directions: from the rst station to the last
station and from the last station back to the rst station. The time
required for a train to travel between two consecutive stations is
xed since all trains move at the same speed. Trains make a very short
stop at each station, which you can ignore for simplicity. Since she
is a very fast agent, Maria can always change trains at a station even
if the trains involved stop in that station at the same time.

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

思路

DAG上固定起点终点的动态规划,输入,和处理较为繁琐,但思路不是特别难

/*************************************************************************
    > File Name: UVa_1025_城市间谍.cpp
    > Author: dulun
    > Mail: dulun@xiyoulinux.org
    > Created Time: 2016年03月10日 星期四 15时39分49秒
 ************************************************************************/

#include<iostream>
#include<stdio.h>
#include<cstring>
#include<cstdlib>
#include<algorithm>
#define LL long long
using namespace std;

const int INF = 1<<30;

int main()
{
    int kase = 0;
    while(1)
    {
        int n, T, M1, M2;
        bool has[255][255][2] = {0};
        int t[255] = {0};
        int d[255] = {0};
        int e[255] = {0};
        int ct[255] = {0};
        int dp[255][255] = {0};

        scanf("%d", &n);
        if(n == 0) break;
        scanf("%d", &T);

        for(int i = 1; i <= n-1; i++) {scanf("%d", &t[i]); ct[i+1] = ct[i]+t[i];}//printf("ct[%d] = %d", i, ct[i+1]);}
        ct[1] = 0;
        t[n] = 0;

        scanf("%d", &M1);
        for(int i = 1; i <= M1; i++) scanf("%d", &d[i]);

        scanf("%d", &M2);
        for(int i = 1; i <= M2; i++) scanf("%d", &e[i]);

        for(int i = 1; i <= M1; i++)
        for(int j = 1; j <= n;   j++) has[d[i]+ct[j]][j][0] = 1;
        for(int i = 1; i <= M2; i++)
        for(int j = 1; j <= n;   j++) has[e[i]+ct[n]-ct[n-j+1]][n-j+1][1] = 1;


        for(int i = 1; i < n; i++) dp[T][i] = INF;
        dp[T][n] = 0;

        for(int i = T-1; i >= 0; i--)
        for(int j = 1; j <= n; j++)
        {
            dp[i][j] = dp[i+1][j] + 1;
            if( j < n && has[i][j][0] && i+t[j] <= T) dp[i][j] = min(dp[i][j], dp[i+t[j]][j+1]);
            if( j > 1 && has[i][j][1] && i+t[j-1] <= T) dp[i][j] = min(dp[i][j], dp[i+t[j-1]][j-1]);
        }

        printf("Case Number %d: ", ++kase);
        if(dp[0][1] >= INF) printf("impossible\n");
        else printf("%d\n", dp[0][1]);
    }
    return 0;
}

uniapp - 最新详细实现web-view网页与安卓苹果App端之间互相通信功能,苹果app/安卓app平台与内嵌webview组件内的网页进行相互传值,内置网页与app双向实时通信,详细示例代码 uni-app,Android安卓,苹果ios,app,内嵌webview,第三方H5网页,app和web-view通信传值,web-view引入的页面向App主应用传递数据,App端与webview端相互通信,App端和H5端webview之间的通信,uniapp实现webview和APP之间的传值通信,如何互相传递对象数据,数据传递了接收不到,web-view页面向app内发送消息,监听传递的参数,uni-app和web-view页面相互传参,报错怎么办,跨域,屏幕空白出错,数据交互,解决手机物理返回按 阅读详情

相关推荐

服务器测试之网卡性能调优

nvidia下载mlnx_ofed:https://network.nvidia.com/products/infiniband-drivers/linux/mlnx_ofed/intel下载驱动固件:https://www.intel.com/content/www/us/en/download-center/home.html。然而,你可以根据实际情况手动调整中断相关配置。老生常谈了,一些性能相关的设置项打开,节能的关闭,虚拟化相关的VMX/SR-IOV/IOMMU最好也都关掉。

qq_41897488的博客 4908

UVA 1025 A Spy in the Metro DP

DP[ i ][ j ] 在 i 时刻 j 号车站的等待最小时间..... 有3种可能: 在原地等,坐开往左边的车,做开往右边的车 A Spy in the Metro Time Limit: 3000MS   Memory Limit: Unknown   64bit IO Format: %lld & %llu S

码代码的猿猿 3007

手把手教你用TJA1145A实现CAN节点智能唤醒(含数据帧过滤技巧)

本文详细介绍了如何使用TJA1145A收发器实现CAN节点的智能唤醒功能,包括数据帧过滤技巧和超低功耗设计。通过硬件级帧过滤和双条件唤醒机制,TJA1145A在保持微安级休眠电流的同时,能对特定报文做出毫秒级响应,显著提升电池供电设备的续航能力。

weixin_28721917的博客 251

UVA-1025 A Spy in the Metro(多决策dp)

uva-1025 A Spy in the Metro 题目 某城市的地铁是线性的,有n(2≤n≤50)个车站,从左到右编号为1~n。有M1辆列车从第1站开始往右开,还有M2辆列车从第n站开始往左开。在时刻0,Mario从第1站出发,目的是在时刻T(0≤T≤200)会见车站n的一个间谍。在车站等车时容易被抓,所以她决定尽量躲在开动的火车上,让在车站等待的总时间尽量短。列车靠站停车时间忽略不计,且M...

Stormjing的博客 241

【VAX 小番茄安装详细步骤】

本文详细介绍了在VS2022环境下安装Visual Assist X(番茄助手)的步骤及常见问题解决方案。主要内容包括:安装前的兼容性设置(需修改为Windows7兼容模式)、安装流程(卸载旧版本、勾选对应VS版本、替换关键dll文件)以及常见问题处理(如安装失败、工具栏图标缺失等)。文章提供了完整的下载链接和操作截图,特别强调了安装失败后的清理方法(注册表、安装目录和残余文件删除)。最后给出了安装成功后的测试运行指引。

qq_23962581的博客 1718

基于 openEuler 24.03 LTS 源码编译安装 Zabbix 7.4

Zabbix是一款开源的企业级分布式监控系统,支持网络、服务器、应用等多种IT资源的监控。核心功能包括数据采集、告警通知、可视化展示等,采用Server/Agent架构,支持多种操作系统。本文详细介绍了在openEuler 24.03系统上部署Zabbix 7.4.2的完整流程,包括环境准备、MySQL配置、PHP/Apache安装、Zabbix编译安装等步骤,为构建企业级监控系统提供了实践指导。

广然笔记 1191

UVA1025(A Spy in the Metro) DAG上的动态规划

UVA1025(A Spy in the Metro) DAG上的动态规划 考虑到等待的时间只与所在的车站和时间有关,设状态方程为dp[i][j]表示在i时刻j车站最少需要等待的时间。 显然,dp[t][n]为0,因为要区分出不可能到达的情况,所以初始化dp[t]i为INF。 接下里考虑状态转移的策略: 1、原地等待1分钟。 2、如果有向左开的地铁,乘坐。 3、如果有向右开的地铁,乘坐。 这三种策略对应的状态转移方程为: 1、dp[i[[j]=min(dp[i][j],dp[i+1][j]+1) 2、dp[

WedsonLin的博客 248

HDMI设计6--Video PHY Controller IP

Reference:https://china.xilinx.com/content/dam/xilinx/support/documentation/ip_documentation/vid_phy_controller/v2_2/pg230-vid-phy-controller.pdf 1. 序 Video PHY Controller IP是为实现与视频(DisplayPort和HDMI™技术)MAC传输或接收子系统的即插即用连接而设计的。视频MAC层和PHY层的接口是标准化的,能...

Archar_Saber的博客 8342

Uva1025 A Spy in the Metro

Uva1025 A Spy in the Metro #include <iostream> #include <cstring> #include <cstdio> using namespace std; int t[55]; int dp[55][222]; //dp[i][j]记录在第i个车站需要等待时间 int ...

weixin_43249938的博客 146

使用兮克 2.5G 交换机将北京联通 EPON 改为 ODI 猫棒接入

最近入手了兮克2.5G交换机(兮克SKS1200-8GPY1XF),有 8 个 2.5G 电口和 1 个 10G SFP+ 光口;支持多种组网模式,其中一种是支持使用猫棒接入,由路由器拨号后再回接到交换机,这样就可以替换掉光猫了。

啦啦啦啦 la 1万+

基于simulink的BMS系统中电池单体故障隔离与恢复建模

本文介绍了使用Simulink构建BMS电池单体故障诊断与容错控制模型的方法。主要内容包括:1)搭建12串锂电池组模型;2)实现单体故障注入(过压、断线等);3)设计故障诊断与隔离模块(采用Stateflow状态机);4)开发恢复判断逻辑(需满足电压、温度等条件);5)系统监控与仿真设置。文章还提供了工程实践建议,如防环流设计、通信冗余等,并指出进阶方向(多故障处理、AI预警等)。该模型适用于新能源汽车、储能系统的BMS设计,可提高系统可靠性和安全性。

xiaoheshang_123的博客 140

UVA 1025 A Spy in the Metro (DP)

题目链接UVA 1025 A Spy in the Metro题意地铁中有n个车站,从第一个和最后一个车站会开出地铁,地铁开出时间以及各站之间的所需时间已给出,有一名间谍要在时间T内从第一站到最后一站,他可以乘坐正向或者反向的地铁,但要保证在站点的等待时间最少,求最少的等待时间。(如果a分钟时间谍到达第i站,此时若正好有反向地铁,可以瞬间移动到该车上)思路简单dp题,用dp[i][j]表示时刻i在车

m0_37312393的博客 238

基于STM32L4XX 、HAL库的SGM452B数字温度传感器驱动应用C语言程序设计

SGM452B_RESOLUTION_12BIT = SGM452B_CONFIG_R1 | SGM452B_CONFIG_R0 /* 12位分辨率,精度0.0625°C,转换时间200ms */SGM452B_RESOLUTION_11BIT = SGM452B_CONFIG_R1, /* 11位分辨率,精度0.125°C,转换时间100ms */SGM452B_RESOLUTION_10BIT = SGM452B_CONFIG_R0, /* 10位分辨率,精度0.25°C,转换时间50ms */

PP_Cottage的博客 328

UVA1025 A Spy in the Metro —— DP

题目链接:https://vjudge.net/problem/UVA-1025 题解: 详情请看紫书P267。 与其说是DP题,我觉得更像是模拟题,特别是用记忆化搜索写。 递推: #include <iostream> #include <cstdio> #include <cstring> #incl...

alince20008的博客 159

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

UVA1025 A Spy in the Metro

UVA1025 A Spy in the Metro 题目链接 刚开始接触DP题,感觉还是有一定的难度,在这里再理一遍思路。 DP的核心就是状态和状态转移方程 首先状态的确定就是找到影响当前决策的因素,本题是当前时间和所处车站两个,所以可以用d[i][j]表示i时刻在j站最少还要等待的时间。 其次是状态转移方程,取决于决策的形式,本题主要有以下三种决策: 1.在当前车站等待一分钟。 2.搭乘向右开的车。 3.搭乘向左开的车。 找出决策后即可列出相对应的状态转移方程。 1.dp[i][j]=min(dp[i]

polarday的博客 266

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

Uva 1025 A Spy in the Metro

题目大意 有两段轨道,一条向左,一条向右,一人在最左端乘火车,准备到右端N点。火车每经过一段距离会到达一个站台。在此题中,若还没到达下一站台,则需在原来站台等待直到有火车经过(方向随意)。要求等待时间最短的情况下在规定时间内到达N点,数据范围较小。 思路 首先对于每个站台有3种抉择,分别是等待(在火车未到达下一站台的时候)然后时间加1,跳到下一轨道(如果能),跳到上一轨道(如果能)。如果分析出来这三个抉择则能初步判断是动态规划。而需要维护的状态是T时间,M站台,dp[T][M]的意义是在时间点为T时,在M

qq_41201328的博客 195

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

uva1025 a spy in the metro

动态规划

YHaX的博客 668

【uva 1025】A Spy in the Metro

【题目链接】:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=3466 【题意】 有n个站台;(线性的); 每相邻两个站台之间的火车的行驶时间是固定的; 然后每天在第一个站台会向第n个站台的方...

88

A - A Spy in the Metro UVA - 1025

#include #include #include using namespace std; int INF=0x3f3f3f3f; int main() { //freopen("E:\\file.txt","r",stdin); int has_train[205][55][2]; int N; //the number of stations int T

以梦为马,不日抵达。 279

UVA1025 城市里的间谍 A Spy in the Metro

某城市地铁是一条直线,有n2≤n≤50)个车站,从左到右编号1n。有M1​辆列车从第1站开始往右开,还有M2​辆列车从第n站开始往左开。列车在相邻站台间所需的运行时间是固定的,因为所有列车的运行速度是相同的。在时刻0,Mario 从第1站出发,目的在时刻T0≤T≤200)会见车站n的一个间谍。在车站等车时容易被抓,所以她决定尽量躲在开动的火车上,让在车站等待的时间尽量短。

Gowi的博客 1461

A Spy in the Metro UVA - 1025 dp

题目链接:https://vjudge.net/problem/UVA-1025 紫书P268 书上是按照T从大到小 题意:第一行输入n,为n个车站,第2行为T,第三行表示从i到i+1车站所需时间,下面两行表示从1号车站向右走到n号车站有多少班车以及出发时间,最后两行表示从n号到1号的车出发时间,求在时间T到达n号车站在车站等待的最少时间。 思路:dp【i】【j】表示在第i分钟j号车站已经等待的...

A 261

[UVa 1025]A Spy in the Metro

Secret agent Maria was sent to Algorithms City to carry out an especially dangerous mission. After several thrilling events we find her in the first station of Algorithms City Metro,

347

UVA 1025 A Spy in the Metro

Description Secret agent Maria was sent to Algorithms City to carry out an especially dangerous mission. After several thrilling events we find her in the first station of Algorithms City Metro, examin...

祈的博客 278

uva 1025 A Spy in the Metro 解题报告

A Spy in the Metro Time Limit:3000MS 64bit IO Format:%lld & %llu SubmitStatusuDebug   Secret agent Maria was sent to Algorithms City to carry out an especially d...

diaoxiangxi0422的博客 158

★UVa 1025---A Spy in the Metro 题解 (简单dp)

https://vjudge.net/problem/UVA-1025 题意:一个间谍要从第一个车站到第n个车站去会见另一个,在是期间有n个车站,有来回的车站,让你恰好在时间T到达n,并且等车时间最短,输出最短等车时间。 思路:先用一个L[][]来表示在t时刻,在车站i,是否有往右开的车。同理,R[][]用来保存是否有往左开的车。          用d(i,j)表示时刻i,你在

K键盘里的青春K 1373

UVa 1025 A Spy in the Metro(DP)

题意  某城市的地铁有n个车站 编号1到n  有m1辆车向右开 给出m1个从车站1出发的时间  m2辆车向左开  给出m2个从车站n出发的时间  t[i]为火车从第i个车站开到第i+1(或相反)个车站需要的时间   Maria在车站1 她需要恰在时刻T到达第n个车站  求她的最小总车站等待时间 基础的多阶段决策DP  令d[i][j]表示时刻j在i号车站剩下的最小总等待时间 每种状态有3种选择

Deng's site \# 2033
上一篇: 动态规划初步总结(1)(51Nod,CODE[VS]为例题)
下一篇: CODE[VS] 1014 装箱问题
Tony L.Du
博客等级 码龄11年 73粉丝 156原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值