- 博客(7)
- 收藏
- 关注
原创 小米 OJ 编程比赛 04 月常规赛
A:不一样的排序题意:有 n 个数(a1,a2…an),需要用因子个数的多少进行排序,因子个数多的排在后面,因子个数少的排在前面,如果因子个数相同那么就比较这个数的大小,数大的放在后面,数小的放在前面。现在让你说出排序之后第 K 个位置的数字是多少。(n<1e7,ai,k<1e6)题解:nlongn筛出1e6以内每个数因子个数,优先队列维护前k大,最后输出第k大即可.代码:...
2019-04-30 22:27:25 251
原创 [Gym-100827G] Number Game(博弈)
description:Alice and Bob are playing a game on a line of N squares. The line is initially populated with one of each of the numbers from 1 to N. Alice and Bob take turns removing a single number fro...
2019-04-21 00:24:10 610
原创 ZOJ-4097 Rescue the Princess(Tarjan边双连通缩点 + LCA)
题目链接题目大意:给你一个图(不保证连通,可能存在重边),多次查询,一次查询给出三个点u,v,w,(可能会重合),求有没有两条路径使得v到达u,w到达u,且这两条路径不重合。 点的数量 和 查询次数都是1e5级别。题解:先对原图进行边双连通缩点,判断的时候分为以下情况:1.三个点都在同一个边双连通里,那么肯定存在这样两条不相交路径,想一下边双连通分量的性质就明白了2.两个起点v,w在同...
2019-04-18 21:04:41 264 2
原创 CodeForces-1143E Lynyrd Skynyrd(倍增)
Description:Recently Lynyrd and Skynyrd went to a shop where Lynyrd bought a permutation p of length n, and Skynyrd bought an array a of length m, consisting of integers from 1 to n.Lynyrd and Skyny...
2019-04-11 21:04:14 516
原创 perflab实验smooth函数优化
优化1:一个看到有个函数avg,回想一下书上的例子,减少函数调用算是一个优化,于是就把avg的内容直接写在循环体里面char smooth_descr[] = "smooth: Current working version";void smooth(int dim, pixel *src, pixel *dst) { int i, j; for (i = 0; i <...
2019-04-11 17:32:11 3062 5
原创 二分图最大匹配-HK算法的简单理解和实现
求一个二分图的最大匹配,朴实的匈牙利算法的复杂度为O (VE),优点是代码量很少,而且顶点数目在1000以内的时候表现不错。bool dfs(int u,int tot){ for(int i = head[u];i != -1; i = e[i].nxt){ int v= e[i].v; if(vis[v] == tot) continue; vis[v] = tot; if...
2019-04-08 22:46:48 3960 6
原创 Tarjan算法的练习
基本介绍:Tarjan算法其实就是一种带技巧的DFS,比普通的dfs多了两个标记:dfn和low,实质上还是一种DFS。Tarjan算法能做什么?求有向图的强连通分量求无向图的割点求无向图的桥(割边)求LCA(最近公共祖先)网上有很多的tarjan算法详解,这里就不重复造轮子了。刚学tarjan算法的时候觉得很神奇,花了很长时间去消化,但是不去用慢慢就又忘了,所以这里贴出一些ta...
2019-04-03 23:31:48 530 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人