我太难了

9.1

大逃离 (开始不会)

  在int main()里面定义变量要赋初始值0;

  变量搞混 弄乱了什么时候%k什么时候%mod

9.2

垃圾陷阱 没有看懂

9.3

传球游戏 环的问题有时候再接一份有时候不用接

接苹果 特殊状态

9.4

月赛读题

9.7

神仙博客!https://blog.csdn.net/weixin_42264485/article/details/88092469

          https://www.cnblogs.com/RabbitHu/p/BIT.html

树状数组:

  1. 模板
  1.  单点修改单点查询
  2.  区间修改单点查询
  3.  区间修改区间查询
  1. 应用例题

校门外的树 c1统计左括号c2统计右括号 右-左

  1. 二维树状数组?!??

9.18

肮脏的牧师

写了一下午暴力最后发现思路错了……觉得对也一定要先研究样例

幂次方 很神奇的一个题 递归的很神奇

9.22

  1. 独木桥

神奇的解法 妙

  1. 烧水问题

先确定贪心的思路然后列举找规律

  1. 鬼谷子的钱袋

数据范围10^9了过大是个算法就要超时

于是分治~log n

#include

降序priority_queue wa; 

升序priority_queue,greater > z;

z.push(1); //压入元素

z.top(); //返回此时优先级最高的元素

z.pop(); //弹出优先级最高的元素,但不返回它的值

z.empty(); //返回一个bool值,如果队列为空返回true,否则返回false z.size(); //返回队列中元素的个数

 

9.25

 

Manyan游戏

https://blog.csdn.net/guapi2333/article/details/83045770

确认过长度 我遇见打不出来的题

暴力都不知道要咋暴力~

阅读理解了一下代码

 

油滴扩展

又是一个没有头绪的暴力

阅读了代码觉得思路清晰

 

9.28

1330 封锁阳光大学

①每一条边所连接的点中,至少要有一个被选中。②每一条边所连接的两个点,不能被同时选中。由此,可以推断出:

每一条边都有且仅有一个被它所连接的点被选中。

又因为我们要处理的是一个连通图。所以,对于这一个图的点的选法,可以考虑到相邻的点染成不同的颜色。

于是,对于一个连通图,要不就只有两种选法(因为可以全部选染成一种色的,也可以全部选染成另一种色的),要不就是impossible!

9.29

最小生成树

  1. 局域网板板
  2. 口袋的天空

建k个树啊?我们仔细想一下kruskal的过程,其实每一步建边都保证了当前的所有生成树花费最小。每次合并都少1棵生成树,那么我们只需在kruskal的过程中记录当前的生成树数量num,每次合并时num--,更新花费即可,注意 一开始是每个点都是有1棵生成树,故初始生成树数量为n

  1. 分组

其言二分恰似模拟

10.4

  1. 数值哈希像极了爱情~
  1. 正方形
  2. 集合
  3. sumsets
  1. 操作系统 优先队列!
  2. 序列合并 优先队列是一个树形……大的在上

10.5

  1. 最小函数值

10.6

  1. 黑匣子

 

优先队列总结:https://www.cnblogs.com/huashanqingzhu/p/11040390.html

  1. 头文件#include
  2. 定义 priority_queue a 默认大根堆

小根堆设置 priority_queue<int, vector<int>, greater<int> > c;

两个元素 先比前一个 前一个相同就比后一个

priority_queueint, int> > a; 

pair<int, int> b(1, 2); a.push(b);

  1. 油滴扩展

  Dfs

Not yet:

  1. 引水入城
  2. 乌龟棋
  3. 种树

 

你可能感兴趣的:(我太难了)