最新文章

查看全部 →

第六届山东省ACM总结

拖了好久才写这份总结,中间考试,聚会,等等都推迟了这事儿。写的过程中一度想要不写了,可能是觉得结果有些不尽人意吧。 赛程 早上6点多起床,然后吃了个早饭,大概7点钟出发,路上前面的两位都在听歌,我因为耳机找不到,也没有下电影,思想神游了4个小时,也是挺佩服自己的 — 或者是刷微博?

· 3 min read

近期算法笔记

算法书籍 莫队算法 最大团 最短路 A _搜索算法——图形搜索算法,从给定起点到给定终点计算出路径。其中使用了一种启发式的估算,为每个节点估算通过该节点的最佳路径,并以之为各个地点排定次序。算法以得到的次序访问这些节点。因此,A_搜索算法是最佳优先搜索的范例。

· 12 min read

ACM – 浙江省赛F – 图论

浙江省赛题目,分析后直接暴力即可,奈何场上脑子里全是floyd,WA无数次。 做题一定要先分析时间复杂问题,采取暴力方法,然后再考虑复杂问题解决方法。

· 1 min read

ACM – Uva10047 – 图论

隐式图搜索,多个状态然后减枝。。没看懂李大大所说可以承受是个啥意思。。 做起来实在太累了。。减枝的部分看了别人的代码,发现着实麻烦,不如用优先队列来的痛快=- =还有用优先队列做的= =

· 2 min read

ACM – Uva10054 – 欧拉回路

问能不能拼接一条项链,条件是首尾相同构成环。 这个题的坑在: 虽然保证连通,但是不一定每个颜色都有,所以单纯的暴力euler(1)是很愚蠢的。 题目本身是要求顺序输出的,也就是dfs不能回溯,如果回溯,为了保证准确性,需要交换uv的位置来保证。

· 1 min read

一些vim的想法

插件管理方面 对于Vundle,可以给每个插件添加一个简单的配置文件,针对不同的插件进行不同的载入,有时间可以实现一下。 或者可以重新造轮子,自己写一个插件管理器,实现功能。 莫非已经实现了功能而我没有发现?= = Map.vim /tmp/tmp.cpp ACM.vim 添加gdb调试脚本功能。 …

· 1 min read

灭火

火会蔓延,人被火追着跑,能否跑出边界的问题。 bfs火之后bfs人,或火和人放在一个队列里面bfs 坑是没有火的情况,如果从0更新火势图而不是inf开始,那么可能造成没火不能跑的情况。

· 2 min read

ACM – Uva10294 – 置换

项链和手镯。 项链的问题在于不可以翻转,因此少了一种置换,而手镯则可以反转。然后我们计算旋转的置换。 旋转的步长可以是0,i,2i…然后我们可以得出循环一共有n/gcd(i,n)个元素,因此,我们可以计算出一共有gcd(i,n)个循环。则不定点的个数为

· 2 min read

ACM – 置换

终于搞明白置换了,可喜可贺。建议不要看屈的离散数学,看白书即可,通俗易懂。 我在这里简单阐述一下,当然也是依据李大大的书。 置换 置换就是把n个元素全排列,置换可以定义乘法。

· 1 min read

ACM – UVa10023 – 开平方

本题目计算开根号数字,给出Y求X。X = sqrt(Y),主要问题在Y的超大数据。 时间限制是3s。我使用的大数模板中没有一个大数除大数的算法,因此直接借用Java来搞一搞。

· 1 min read