写在前面
又有好长时间没有写过课程笔记了啊~
—— by JoyWonderful
并查集就是将一些集合融合,然后查询某个数字和某个数字是否在这个集合里(蒟蒻奇怪的自我理解,大概也没人看这句话)。
并查集有一个思想,一个元素的父亲为自己,这是初始化时会用到的。
最近弄的 github 卡片,弄了半天弄出来的鼠标悬浮显示文字的效果。使用 CSS 伪元素弄出来的小提示。但是不适合 overflow: hidden;
的元素。不管怎么说,还是很好用的,忘掉了就不太好,也就放到博客里来了。
这几天刚去学习了一下用 gdb 调试代码,在这儿记下来。
首先,编译代码的时候需要加上 -g
选项,说明要加上调试信息,这样才可以正常调试。例如:
$ g++ -g oi.cpp -o oi.exe
随后,即可使用 gdb 打开文件进行调试。直接使用 gdb [file name]
即可。
$ gdb oi
GNU gdb (GDB) 7.8.1
Copyright (C) 2014 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
# ...[很多信息]
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from oi...done. # 成功信息
(gdb) # 现在可以键入调试命令了
又是一个随记,方便自己的使用。C++ 中的 scanf
和 printf
其实有很多比 cin
cout
好用的地方,放在这里。
背包问题是动态规划中很典型的一个问题。一个背包有特定的重量,去装重量为 w 价值为 d 的物品,在不超过背包重量上限的前提下使物品的价值和最高。
这个问题一看,就不是贪心可以做的来的。所以,就可以用上我们的爆搜!!(暴力出奇迹)动态规划来解决背包问题。