qbxt Day2 on 19-7-25

——TGZCBY

上午

1. 矩阵乘法在图论上的应用

有的时候图论的转移方程可以用dp的方式转移

特别是两个数的乘积求和的时候

比如邻接矩阵中f[i][j]表示走了i条边之后到达j点的方案数

直接用最后的矩阵*邻接矩阵^p就基本OK

通常情况下能够用矩阵乘法解决的优化问题

都有这种情况出现

然而要注意:数据范围

因为矩阵乘法的复杂度几乎无法保证\(\leq O(n^2)\)

我们这时候还是需要尽量去合并范围更小的乘法项

去优化这个更加难受的优化

牢记矩阵乘法有结合律,没有交换律

2. 搜索的剪枝技巧

zhx:说实话,我无法教给你们万用的技巧

因为每一个题都有一个特定的剪枝技巧

真的!!每一个题都不一样

但是一些通用的剪枝技巧还是有迹可循


比如我们先想:什么时候用bfs

bfs通常使用在计数的时候

这个时候我们不会让dfs去跑一遍作死

然后还有前后数据没有太大关联的时候

这个时候状态转移好转移啊


如果bfs炸了,我们还是回到一个dfs上

dfs的好处就是状态转移直观啊

但是dfs无法满足大量的转移

怎么办呢?

这里提供几个解决办法:

  1. 改变枚举顺序

    通常出题人是不会让你过正常思维整出来的题目的

    所以我们要换一种顺序去得到正确答案并且快速枚举

  2. 可行性剪枝

    说白了就是往最好的方面去走,然后排除绝对不可能的选项

    先走最有可能的选项

    这样我们就有了一个更好的搜索树让可行性这个剪枝更加优秀

  3. 判重

    有一些搜索的搜索树是相同的

    可能 or 不可能都剪掉

    然后有一部分填空的题目上下、左右有对称性

    如果重复也可以直接剪掉

  4. 卡时

    有的时候你已经算出正确的答案了

    特别是你的枚举顺序特别好的时候

    这个时候如果快要超时了(当然你不知道答案是否正确)

    你就赶紧掐断这个搜索树

    直接输出目前为止最好的答案

    这也不失为一种暴力的好办法

    毕竟有的时候确实是好用(Orz)

搜索就说这么多

下午

基础数据结构

  1. 单调栈

单调栈当然是比较高级的栈

其中的元素满足一定的单调性

当我们弹出其中元素的时候

我们还要进行状态的转移

  1. BST

二叉搜索树之所以还讲

是因为要为后面线段树做好铺垫

而且搜索树的性质、思想十分重要

所以讲了BST

  1. 树状数组

树状数组之所以还有用处

是因为代码短,常数小

而且用它的地方还有求逆序对

所以好处多多

但是局限性很大

只要元素不满足“可以相减来转移”的性质

树状数组就废了

  1. 线段树

线段树是一个好东西

在维护区间操作的时候十分的给力

注意tag的用法

有的时候还是要进行一波玄学操作的

  1. 左偏树

老师竟然不会普通堆!于是一波福利就来了。

这个左偏树我做了详细的介绍,可以 点这里 来查看。

今天的例题我先不放了......等我先都做完了再说qwq

qbxt Day2 on 19-7-25的更多相关文章

  1. QBXT Day2主要是数据结构(没写完先占坑)

    简单数据结构 本节课可能用到的一些复杂度: O(log n). 1/1+1/1/.....1/N+O(n log n) 在我们初学OI的时候,总会遇到这么一道题. 给出N次操作,每次加入一个数,或者询 ...

  2. 19.3.25 sql查询语句

    1.单表查询:select * from 表名 where id = 111 2.查询表内数据并以id排序:select * from 表名 order by id (降序:desc/升序:asc) ...

  3. QBXT Day2

    遭遇[问题描述]你是能看到第一题的 friends呢.—— hjaN座楼房,立于城中 .第i座楼,高度 hi.你需要一开始选择座楼,开始跳楼. 在第 i座楼准备跳需要 ci的花费. 每次可以跳到任何一 ...

  4. Java每日一面(Part1:计算机网络)[19/11/25]

    作者:晨钟暮鼓c个人微信公众号:程序猿的月光宝盒 1. HTTP相关[2] 1.1Get请求和Post请求的区别 从三个层面来回答: 1.1.1 从HTTP报文层面: ​ Get请求将请求信息放在UR ...

  5. 蓝桥杯刷题,第四界省赛B组

    题头,本内容的题目和部分内容均来自博客:https://blog.csdn.net/ryo_218/article/details/79704030 ,在此感谢. 1. 题目标题:高斯日记大数学家高斯 ...

  6. 【转载】JAVA基础:注解

    原文:https://www.cnblogs.com/xdp-gacl/p/3622275.html#undefined 一.认识注解 注解(Annotation)很重要,未来的开发模式都是基于注解的 ...

  7. java基础—注解annotation

    一.认识注解 注解(Annotation)很重要,未来的开发模式都是基于注解的,JPA是基于注解的,Spring2.5以上都是基于注解的,Hibernate3.x以后也是基于注解的,现在的Struts ...

  8. 【Java】时间戳与Date相互转换

    时间戳转Date public static void main(String[] args) { // 10位的秒级别的时间戳 long time1 = 1527767665; String res ...

  9. @interface 注解详解

    转:http://www.cnblogs.com/xdp-gacl/p/3622275.html 只为成功找方法,不为失败找借口! Java基础加强总结(一)——注解(Annotation) 一.认识 ...

随机推荐

  1. HDU 2512 一卡通大冒险 (第二类斯特林数)

    题目链接:HDU 2512 Problem Description 因为长期钻研算法, 无暇顾及个人问题,BUAA ACM/ICPC 训练小组的帅哥们大部分都是单身.某天,他们在机房商量一个绝妙的计划 ...

  2. Normal Equation Algorithm求解多元线性回归的Octave仿真

    Normal Equation算法及其简洁,仅需一步即可计算出theta的取值,实现如下: function [theta] = normalEqn(X, y) theta = zeros(size( ...

  3. org.apache.hadoop.hive.ql.exec.DDLTask. MetaException错误问题

    下载 http://www.java2s.com/Code/Jar/m/Downloadmysqlconnectorjavacommercial517binjar.htm 放到lib目录下,删除原本的 ...

  4. 2019牛客暑期多校训练营(第一场) - E - ABBA - 贪心 - dp - 组合

    https://ac.nowcoder.com/acm/contest/881/E 从dp的角度来看是比较正常的.无后效性来源于前面只要的合法的方案分配,那么对后面造成的影响就只有A,B的数目. 从贪 ...

  5. k3 cloud查看附件提示授予目录NetWorkService读写权限

    打开文件的时候出现下面的提示: 解决办法: 解决办法:找到C:\Program Files(x86)\Kingdee\K3Cloud\WebSite\FileUpLoadServices,在下面创建F ...

  6. console.log的高级用法

    //基本用法 console.log('最常见用法\n换行'); console.error('输出错误信息 会以红色显示'); console.warn('打印警告信息 会以黄色显示'); cons ...

  7. 抓包工具Charles简单使用介绍(可抓取Android中app的请求)

    摘自: 作者:Roy_Liang链接:http://www.jianshu.com/p/5539599c7a25 Charles安装 HTTP抓包 HTTPS抓包   1. Charles安装 官网下 ...

  8. 关于iframe跨页面设置高度

    注意:这两种方式不支持跨域使用 1.jQuery简单实现iframe的高度根据页面内容自适应的方法(加载后展示使用) 方式1: //注意:下面的代码是放在和iframe同一个页面中调用 $(" ...

  9. 【记录】mysql 查看某数据库各个表容量大小SQL

    有时候我们可能需要了解数据库中各个表的容量及大小,好了解数据库情况. 现只需要一条SQL就可以直观的展示出来. SELECT table_schema AS '数据库', table_name AS ...

  10. 2018-2-13-win10-uwp-分治法

    title author date CreateTime categories win10 uwp 分治法 lindexi 2018-2-13 17:23:3 +0800 2018-2-13 17:2 ...