CF 793D Presents in Bankopolis

浅谈innovus Update io latency相关作用 同样我们使用update io latency,工具取launch clock latency负值反标到clock端口上,同时认为capture clock latency与launch clock latency相等,这样可以相互抵消,这样setup time slack = T – Tsetup -Tcomb – Toutput_delay,因此采用update io latency后,reg2out timing path的setup check变得真实些。图3 in2reg示意图。 阅读详情

D. Presents in Bankopolis

一个有向图,节点“有序”,找一条长度为k的最短路径,额外要求是当前边不能“跃过”已经经过的节点。
起点的选择范围是[1,n]然后每经过一个点,下一个能到达的点的范围就会缩小,注意到总可以用一个连续的范围表示之,记为[l,r]。那么用dp解决,状态dp[l][r][k]表示可达范围是[l,r],已经走了k步。
貌似dp写成记忆化搜索更符合我的思维,但是这题写记忆化会T。。改递推还改了半天。。
以后能写递推的题,我再写记忆化我就是SB!!!

#include <bits/stdc++.h>

using namespace std;

#define ll long long

const int INF = 1e9;

int n,k;
int m;
const int Max = 88;

int e[Max][Max];

int dp[Max][Max][Max][2];

inline void ckMin(int &x,int y){
    if(x>y){
        x=y;
    }
}

int main(){
    cin>>n>>k;
    cin>>m;

    for(int i=0;i<Max;i++){
        for(int j=i;j<Max;j++){
            for(int kk=0;kk<Max;kk++){
                if(kk==k){
                    dp[i][j][kk][0] = dp[i][j][kk][1] = 0;
                }else{
                    dp[i][j][kk][0] = dp[i][j][kk][1] = INF;
                }
            }
        }
    }

    for(int i=1;i<=m;i++){
        int u,v,c;
        cin>>u>>v>>c;
        if(e[u][v] == 0){
            e[u][v] = c;
        }else{
            e[u][v] = min(e[u][v],c);
        }
    }

    if(k>n){
        cout<<-1<<endl;
        return 0;
    }

    for(int kk=k;kk>0;kk--){
        for(int l=1;l<=n;l++){
            for(int r=l;r<=n;r++){
                for(int pre=1;pre<l;pre++){
                    if(e[pre][l]){
                        ckMin(dp[pre][r][kk-1][1],dp[l][r][kk][1]+e[pre][l]);
                    }
                    if(e[pre][r]){
                        ckMin(dp[pre][r][kk-1][1],dp[l][r][kk][0]+e[pre][r]);
                    }

                }
                for(int pre=r+1;pre<=n;pre++){
                    if(e[pre][r]){
                        ckMin(dp[l][pre][kk-1][0],dp[l][r][kk][0]+e[pre][r]);
                    }
                    if(e[pre][l]){
                        ckMin(dp[l][pre][kk-1][0],dp[l][r][kk][1]+e[pre][l]);
                    }
                }
            }
        }
    }

    int ans = INF;
    for(int l=1;l<=n;l++){
        for(int r=l;r<=n;r++){
            ckMin(ans,dp[l][r][1][0]);
            ckMin(ans,dp[l][r][1][1]);
        }
    }

    if(ans<INF){
        cout<<ans<<endl;
    }else{
        cout<<-1<<endl;
    }
    return 0;
} 
控制算法研发工程师(博士)职位深度解析与面试指南 摘要:广东万和新电气股份有限公司招聘控制算法研发工程师(博士),工作地点佛山顺德。职位要求2026届博士学历,电子信息工程或控制科学与工程专业。主要职责包括:1)燃气热水、热泵等系统的电控软件设计与优化;2)开发PID、模糊控制、ADRC、MPC等智能算法,应用于恒温控制、变频调节等场景。重点考察算法研发能力、系统稳定性优化及嵌入式实现经验。该职位提供三年资深工程师培养计划,需具备扎实的控制理论基础和工程实践能力,能够处理非线性系统、多工况自适应等复杂控制问题。 阅读详情

相关推荐

《YOLOv8实例分割实战:训练自己的数据集 》(视频课程)

本课程将手把手地教大家使用labelme标注和使用YOLOv8训练自己的数据集,完成一个多目标实例分割实战项目。

bai666ai的博客 789

Codeforces 793D Presents in Bankopolis【Dp+记忆化搜索】

D. Presents in Bankopolis time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output Bankopolis is an incredible city in which a

mengxiang000000 803

用CentOS 7安装cadence搭建适合IC Design的科研环境(四)——IC617、MMSIM151、calibre2015安装过程step by step

以下操作都在root权限下执行。建立安装目录建议把这种大型软件装在/opt目录下。mkdir -p /opt/cadence/installscape mkdir -p /opt/mentor/Calibre2015其中-p参数是直接建立父目录。因为IC617和MMISM151会自己建立安装目录,所以在这里没有建相关目录。而calibre则是默认安装在安装包所在的目录下,所以需要提前建立。解压安

maxwell2ic的博客 7万+

记忆化搜索Presents in Bankopolis(CF793D )

记忆化搜索!

R的博客 346

STM32F4串口接收ATGM336H GPS数据,手把手教你解析NMEA协议并转换经纬度格式

本文详细介绍了如何使用STM32F4开发板通过串口接收ATGM336H GPS模块的NMEA协议数据,并解析GNRMC语句获取经纬度信息。内容涵盖硬件连接、NMEA协议深度解析、数据校验实现以及经纬度格式转换的数学原理与代码实现,为嵌入式开发者提供完整的GPS数据处理解决方案。

weixin_42522575的博客 497

DGX Spark上PyTorch GPU环境配置实战:CUDA 13.0与ARM架构全流程

在深度学习中,CUDA作为GPU加速计算的底层基础,其版本与深度学习框架(如PyTorch)的匹配直接影响模型训练的效率与稳定性。GPU环境配置不仅涉及驱动、CUDA工具链与框架运行时的协同,还依赖于硬件架构与预构建包的兼容性。在AI开发机Ubuntu系统上,正确对齐CUDA版本、计算能力架构及安装源,是避免环境故障、发挥硬件算力的关键。无论是面向个人AI超算还是通用GPU服务器,掌握版本对齐、路径隔离与验证方法,都能大幅提升开发效率。本文以DGX Spark为例,详解从环境摸底到PyTorch GPU版本

weixin_29483277的博客 218

codeforces 793 D. Presents in Bankopolis(记忆化搜索)

题目链接:http://codeforces.com/contest/793/problem/D 题意:给出n个点m条边选择k个点,要求k个点是联通的而且不成环,而且选的边不能包含选过的边不能包含以前 选过的点,问最小的权值是多少。 题解:像这种取最小的一般可以考虑一下dp,然后再看一下题目,由于每次选的边都不能包括以前选的点,所以每 选择一条边能选择的区间范围就缩小了。 ...

awow80285的博客 263

syslog RFC5424协议详解

RFC5424协议解读与报文分析。

chenwr2018的博客 6690

793D Presents in Bankopolis

#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; using namespace placeholders; int area[82][

zju2016的博客 432

基于STM32的智能家用节能控制系统设计

该系统可以实时监测家庭的环境参数,如温湿度、光照强度和人体存在情况,根据设定的节能策略自动控制灯光、空调、风扇等家电设备,从而降低不必要的能源消耗。该基于STM32的智能家用节能控制系统通过多种传感器实现了对家庭环境的实时监测,并结合继电器控制模块实现了对家电设备的自动化控制,从而达到节能减排的效果。根据传感器获取的数据,判断是否需要开启或关闭家电设备,从而降低不必要的能源消耗,达到节能的目的。:继电器的控制引脚连接至STM32的GPIO引脚(如PB0、PB1),用于控制灯光、风扇、空调等家电设备的开关。

stm32d1219的博客 1245

为什么BGA焊点总在四个角先坏?一次热-振耦合仿真给你讲明白

本文通过Ansys Workbench进行热-振耦合仿真,深入分析了BGA焊点在四个角点先失效的机理。研究发现,角点焊点由于CTE失配、振动载荷放大及几何应力集中等因素,承受的等效塑性应变和动态应力显著高于中心区域,导致其疲劳寿命大幅降低。仿真数据揭示了角点焊点的应力分布和蠕变特性,为电子封装可靠性设计提供了重要依据。

weixin_42535461的博客 439

树形DP 【codeforces 793D】Presents in Bankopolis

传送门 判断是否是一道树规题: 即判断数据结构是否是一棵树,然后是否符合动态规划的要求。如果是,那么执行以下步骤,如果不是,那么换台。 建树:通过数据量和题目要求,选择合适的树的存储方式。 如果节点数小于5000,那么我们可以用邻接矩阵存储,如果更大可以用邻接表来存储(注意边要开到2*n,因为是双向的。这是血与泪的教训)。如果是二叉树或者是需要多叉转二叉,那么我

twh233的算法blog 458

最新2026年《网络数据安全风险评估办法》条款解读

大型企业集团IT变革下的零信任安全体系建设方案(55页).pptx。以数据安全为核心的安全立体防御体系解决方案(41页).pptx。让数据安全合规地创造价值(15页 PPT).pptx。大型集团数据安全应急预案(57页).docx。数据安全治理与评估服务业务介绍.pptx。数据安全管理实践(17页).pptx。大数据安全架构设计方案.pptx。大数据安全规划总体方案.pptx。数据库安全综合治理方案.pptx。医疗数据安全建设方案.pptx。数据安全框架规划图.pptx。数据安全治理方案.pptx。

cdfunlove的博客 47

CF793D Presents in Bankopolis/Namomo Spring Camp 每日一题 Week 1Day2 No Crossing

每日一题 Week1 Day2 No Crossing Problem Statement 一个有nnn个点mmm条边的有向图, 你需要找到恰好经过kkk个点的最短路径, 要求每次选的边不能越过之前已经经过的节点. 即对于路径中x→yx\to yx→y. 不存在以前经过的点ttt使得三者编号满足min⁡(x,y)≤t≤max⁡(x,y)\min(x,y)\leq t\leq \max(x,y)min(x,y)≤t≤max(x,y). Solution 首先我们考虑选择一条边x→yx\to yx→y. 如果x

LH_Frank的博客 653

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

【codeforces 793D】Presents in Bankopolis

【题目链接】:http://codeforces.com/contest/793/problem/D 【题意】 给你n个点, 这n个点 从左到右1..n依序排; 然后给你m条有向边; 然后让你从中选出k个点. 这k个点形成的一条路径; 且在路径中,一个被访问过的点不会经过两次或以上; 比如从1->3(1和3被访问过) 然后再从3->4...

AWCXV 165

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

codeforces 793D Presents in Bankopolis

题解: 大致题意为给定n最大为80的直线点阵,并给出m条单向路,且这m条路能走的条件是,路经过的点没有被访问过,问走完K个点的最小代价。起点任意,终点任意 由于n很小,第一反应是往费用流想,后来发现无法建图(可能是我太菜了) 之后考虑到是条直线,于是往区间dp的思路去想发现这个转移很好想到 dp[now][l][r][k]表示当前在now这个点,只能在(l,r)中找点,需要访问K-k个点的最小代价...

TelmaZzzz的博客 404

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

Codeforces 793D Presents in Bankopolis DP

点击打开链接 题意:n个点n 问能否找到长度为k的路径使得不存在已经访问过的x出现在路径的第i条边内min(u,v) 从a->b ab a之后的点无法被访问,每增加一条边,能走的范围(区间)都会减小 dp[l][r][cur][k] 起点为cur,下一步的合法点在(l,r)内,长度为k的路径的最小权值 按cur的边合法的转移状态 O(N^4)记忆化即可 #include usi

Masamiiiiii 1255

Codeforces Problem - 13E Holes

Holes         n个洞1~n,每个洞有一个power,a1~an。把球扔到第i个洞,它会蹦到第i+ai个洞去(一直往后蹦,直到n以外)。有m次操作,分为两种,0是询问把求扔到某个洞,最后能到达哪个洞以及会蹦多少次,1是修改某个洞的power。         这是在CF上一篇讲数据结构的博客上看到的题,学到了一个新的姿势。。方法是分块维护,每块的大小是sqrt(n)。对

A Cube Master 776

CF-Tinkoff Challenge-Elimination Round-D-Presents in Bankopolis

ACM模版描述题解没怎么做过树归问题,所以当做到这道题时不免有些懵逼。典型的树归问题,从一个始发点不断查找下一个可行解,最后输出最小的可行解总和即可。这么说是不是太随意了一些啊,毕竟我没有做出这道题。这个题并不算难,能想到动归就好办了。首先我们设置一个 dp[st][ed][k] 表示从 st 点出发能到达的某个方向最远处 ed 点且剩余 k 个点未走,既然说到某一个方向,那么这里肯定是正向和反向,

逐梦者 557

CF793D(记忆化搜索)

CF793D 每次的走一步,可以选择的区域就缩小,搜索很显然会T,此时加一个记忆化即可。搜索时以当前点,链长和可选区间为搜索状态。 AC代码 #include <bits/stdc++.h> #define yes puts("yes"); #define inf 0x3f3f3f3f #define linf 0x3f3f3f3f3f3f3f3f #define ll long long #define ull unsigned long long #define debug(x) cout&

weixin_58110654的博客 474

codeforces 339C 记忆化搜索

C. Xenia and Weights time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output Xenia has a set of weights and pan sca

liyunlonghere 883

codeforces840C On the Bench -- DP

%%%Vectorxj代码#include<cstdio> #include<cstring> #include<iostream> #include<algorithm> using namespace std; #define N 310 #define M 1000000007 int i,j,k,n,m,p,v[N],l,a[N],x,y,t,f[2][N],s; int c[N][N];

gjghfd 656

CodeForces 136 A.Presents(水~)

Descriptionnn个人互相送礼,第ii个人送第pip_i个人礼物,每个人只会送出一份礼收到一份礼,问第ii个人收到的礼物是谁送的Input第一行一整数nn表示人数,之后nn个整数pip_i表示第ii个人送礼物对象(1≤n≤100)(1\le n\le 100)Output输出nn个整数,第ii个数表示送第ii个人礼物的人Sample Input42 3 4 1Sample Output4 1

ZSQ 626

codeforces 793A Oleg and shares

题意:可以在数组a中,对任意一个元素进行减k操作,问最少操作多少次使得所有a的元素相等,若不能做到输出-1 思路:选取a数组中的最小元素m,无解的条件为存在(ai-m)%k!=0,(0= 还有一种思路:http://blog.youkuaiyun.com/harlow_cheng/article/details/70568269 但是不懂证明 #include const int maxn = 1e5

chen_minghui的博客 338

poj1179 Polygon

题意:一个多边形,顶点上有数字,边上有加号或乘号。先xuan

A Cube Master 588

UVa816 Abbott's Revenge

题意:走迷宫,在某个点,对于mou'g

A Cube Master 1929
上一篇: Codeforces VK Cup 2017 - Round 2
下一篇: CF 797F Mice and Holes(单调队列优化dp)
squee_spoon
博客等级 码龄14年 61粉丝 455原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值