QDC day4
图论。
强连通图 与 弱连通图 。
最短路 。dij 不支持负权。显然 值得一提的是利用斐波那契堆m+nlogn 。
一张 边权都是2的整数次幂 考虑 一下直接 结构体维护这个2的整次幂数组但比大小 太慢 考虑利用数据结构维护。
主席树维护每一位 (当然压位也是可以的 但却不必要 hash值维护 每个区间的值然后就可以快速判断辣。
我们还需要维护一个+1的操作 这就涉及到简单 的线段树上二分。和区间整体赋值问题。
floyd 设x y z 表示 x y 不经过z 这个点的最短路 。经典题目 应该是 分治一下 但是我不太回写,回来写一遍。
spfa 值得一提的是 复杂度 为nm 这个很容易被卡掉 具体卡掉代码如下。
#include <bits/stdc++.h> using namespace std; int N = , M = *N-, L = N; int main()
{
freopen("in", "w", stdout);
printf("%d %d %d\n", N*+, M, L);
for(int i=; i<N; i++) printf("%d %d %d\n", i, i+, );
printf("%d %d %d\n", N, N*+, );
for(int i=; i<=N; i++) printf("%d %d %d\n", i, i+N, N-i+);
for(int i=; i<=N; i++) printf("%d %d %d\n", i+N, i, );
for(int i=; i<N; i++) printf("%d %d %d\n", i+N, i+N+, );
for(int i=; i<=L; i++) printf("%d ", i); putchar('\n');
return ;
}
当然还能在负环上面判断 当然dfs套spfa 这个方法有的时候更快一点。当然floyd 也是可以的。
边权递增最短路。
排序边权 然后 一条一条加入 然后每次松弛一下即可。
某个最短路的题目:
有m条边 连接两个节点 有k条铁路 连接1到某个点 求最多去掉多少条道路使得 1到任意节点的最短路不变。
这道题
n个点m条边 dij 表示两点之间最短路 每个点都有点权 求 min{2*dij + aj};
这将等价于 min{dij+d 0 j} 即可。
n 个点 m 条边 其中有k 个关键点求 k个关键点之间两两之间最短路的最小值。
咕了。
一张图 A B C 的基地 随意选 然后 求一个点 到A B C 的最短路和最小 求 期望和。
不会 咕了。膜改 bfs 一下 即可。
QDC day4的更多相关文章
- python_way,day4 内置函数(callable,chr,随机验证码,ord),装饰器
python_way,day4 1.内置函数 - 下 制作一个随机验证码 2.装饰器 1.内置函数 - 下 callable() #对象能否被调用 chr() #10进制数字对应的ascii码表中的内 ...
- Spark菜鸟学习营Day4 单元测试程序的编写
Spark菜鸟学习营Day4 单元测试程序的编写 Spark相比于传统代码是比较难以调试的,单元测试的编写是非常必要的. Step0:需求分析 在测试案例编写前,需完成需求分析工作,明确程序所有的输入 ...
- Spark Tungsten揭秘 Day4 内存和CPU优化使用
Spark Tungsten揭秘 Day4 内存和CPU优化使用 今天聚焦于内存和CPU的优化使用,这是Spark2.0提供的关于执行时的非常大的优化部分. 对过去的代码研究,我们会发现,抽象的提高, ...
- Catalyst揭秘 Day4 analyzer解析
Catalyst揭秘 Day4 analyzer解析 今天继续解析catalyst,主要讲一下analyzer,在sql语句的处理流程中,analyzer是在sqlparse的基础上,把unresol ...
- Kakfa揭秘 Day4 Kafka中分区深度解析
Kakfa揭秘 Day4 Kafka中分区深度解析 今天主要谈Kafka中的分区数和consumer中的并行度.从使用Kafka的角度说,这些都是至关重要的. 分区原则 Partition代表一个to ...
- Python之路,Day4 - Python基础4 (new版)
Python之路,Day4 - Python基础4 (new版) 本节内容 迭代器&生成器 装饰器 Json & pickle 数据序列化 软件目录结构规范 作业:ATM项目开发 ...
- Day4 - Python基础4 迭代器、装饰器、软件开发规范
Python之路,Day4 - Python基础4 (new版) 本节内容 迭代器&生成器 装饰器 Json & pickle 数据序列化 软件目录结构规范 作业:ATM项目开发 ...
- ##DAY4 事件的基本概念、触摸的基本概念、响应者链、手势
##DAY4 事件的基本概念.触摸的基本概念.响应者链.手势 #pragma mark ———————事件的基本概念 ——————————— 事件的基本概念: 1)事件是当用户的手指触击屏幕及在屏幕 ...
- Day4:T1小技巧(类似于指针操作)T2搜索+小细节
Day4:其中有很多小技巧get T1 一直没有听到过像这样的小技巧的略专业名词,有点类似于指针操作,之前有碰到过很多这样的题目 每次都是以不同的形式出现,但是感觉思想还是有点接近的吧(就比如某天有一 ...
随机推荐
- ansible 2.7 API
# coding:utf-8 # @Time : 2019-01-14 15:22 # @Author : 小贰 # @FileName: ansible_sync_hosts.py # @funct ...
- MVC + EFCore 项目实战 - 数仓管理系统2- 搭建基本框架配置EFCore
本次课程就正式进入开发部分. 首先我们先搭建项目框架,还是和之前渐进式风格保持一致,除必备组件外,尽量使用原生功能以方便大家理解. 开发工具:vs 2019 或以上 数据库:SQL SERVER 20 ...
- Docker镜像-删除镜像
因为尝试使用新的镜像,对原来的镜像进行删除,报错如下: 意思就是在删除镜像之前,要先删除对应的docker.因为该image被对应的container引用,所以image删除失败. 显示所有状态的容器 ...
- 简单了解一下 Swagger
一.Swagger 1.什么是 Swagger ? Swagger 是一个规范和完整的框架,用于生成.描述.调用以及可视化的 Restful 风格的 Web 服务. 简单的理解:是一款 REST AP ...
- Newbe.Claptrap 框架入门,第一步 —— 创建项目,实现简易购物车
让我们来实现一个简单的 “电商购物车” 需求来了解一下如何使用 Newbe.Claptrap 进行开发. 业务需求 实现一个简单的 “电商购物车” 需求,这里实现几个简单的业务: 获取当前购物车中的商 ...
- 04 Django模型层: Django-model进阶
一 QuerySet对象 1.1可切片 使用Python 的切片语法来限制查询集记录的数目 .它等同于SQL 的LIMIT 和OFFSET 子句. Entry.objects.all()[:5] # ...
- mysql实现主从复制/主从同步
业务场景 小公司业务代码存于一个服务器上,而这个服务器有的时候回宕机,导致业务停顿,造成影响.这个时候 就需要做高可用 两个ngix+两个tomcat+两个mysql实现高可用,避免单点问题.中间使用 ...
- Git操作(二)
很久以前写的git入门,最近又巩固了一下Git分支操作,下面是我的一些整理. 1.分支与合并 #创建并切换到该分支 git checkout -b xxx #查看当前分支 git branch #进行 ...
- 太实用了!自己动手写软件——SSH、FTP和SQL server的密码破解
我们的密码破解工具一共分为如下六个部分,前面四个部分我们都有在之前的文章中介绍过了 用户图形界面——GUI编程 密码字典获取——Excel文件读取 数据库类——MySQL.Oracle和SQL ser ...
- Ethical Hacking - GAINING ACCESS(24)
CLIENT SIDE ATTACKS - Detecting Trojan manually or using a sandbox Analyzing trojans Check the prope ...