" Portal loj6059 " Solution ?? 看过去第一反应是。。大力数位dp!然后看了一眼数据范围。。。 ? 但是这没有什么关系!注意到我们不需要考虑前导零了,可以直接快乐dp ? 状态还是能继续用的,记$f[i][j][k]$表示从左往右数的前$i$位,(假装后面没有数位的情况下 ...
分类:
其他好文 时间:
2018-09-04 19:00:47
阅读次数:
158
题意 告诉有n头牛,每头牛有一个编号1~n,再一次烂醉之后,奶牛们没有按照编号排队;告诉你对于第i头奶牛,在它之前有多少头奶牛比它的编号小(i>1,因为第1头奶牛的数据永远为0,故题中省略),求每头奶牛的编号 从后往前推,对于第 i 头奶牛,所给数据 num[ i ] 表示它在前 i 头奶牛中排名第 ...
分类:
其他好文 时间:
2018-09-04 10:31:42
阅读次数:
182
表示自己dij写挫了QWQ 直接建边肯定是很不可做的,那么考虑转换一下,假如我在这里选择跳,相当于可以走a[i][j]步 三次dij 这样转移是150^3次方,强行算完是会T的,那么其实找到了那两个位置就够了 ...
分类:
其他好文 时间:
2018-09-03 22:00:11
阅读次数:
218
蛤省真的坑,这里跟风学长婊一下。 然后就还算简单吧,一个拓扑排序的事。 记录每个点的入度和出度,写一个栈,把入度为0的放进去。然后开始循环,取出一个点,更新这个点所连点的ans和入度,如果入度也变成0了就把该所连点放进栈里,然后把那个点扔掉。 栈空的时候循环结束,这时所有点都被更新了(吧)。我们需要 ...
分类:
其他好文 时间:
2018-09-02 20:10:01
阅读次数:
151
题意:N个点,M条带权有向边,求可以免费K条边权值的情况下,从点1到点N的最短路。 分析:K using namespace std; typedef long long LL; const int maxn =1e5+5; const LL INF =(1ll rhs.d;} }; LL dist ...
分类:
其他好文 时间:
2018-09-01 20:29:02
阅读次数:
161
首先容易想到二维方程dp(i,j),表示第i个左括号去匹配到第j个右括号时产生的最大值,但如果如此表示的话,首先需要枚举(i,j)以及一个k即dp(i-1,k)。 考虑变化dp(i,j)的表示方法,可选择将其表示为第i个左括号至少匹配到第j个右括号时所产生的最大值。如此表示的话,则转移方程为 dp( ...
分类:
移动开发 时间:
2018-08-31 23:27:48
阅读次数:
223
cout、cerr、clog三者都是标准IO库中提供的输出工具。 但是cout是支持重定向操作的。比如freopen()对于cout有效。 clog和cerr主要用于错误输出。 因此,如果将程序输出重定向到文件,并且发生了错误,则屏幕上仍然会出现错误消息。 官方说明:https://zh.cppre ...
分类:
编程语言 时间:
2018-08-31 18:03:36
阅读次数:
165
题意:求两个集合的相似性。 思路:考察set。会用set题目就很简单。不过这里要拓展一下,求交集求并集的函数。见最后。 代码: STL中有求两个集合的函数,在头文件<algorithm>(这里的"集合"不一定非得是set,也可以是vector,string等,但是前提是有序),set_interse ...
分类:
其他好文 时间:
2018-08-30 21:04:32
阅读次数:
180
题意 给你一个有 $n$ 个点, $m$ 条边的无向图,每条有边权 $w_i$ ,现在要选择至多两条边断开,使得 $S, T$ 不连通,并且使得边权和尽量小。 $n \le 1000, m \le 30000$ 题解 我们分要选的边数进行考虑。 1. $0$ 条边:一开始 $S,T$ 不连通直接判掉 ...
分类:
其他好文 时间:
2018-08-29 20:01:36
阅读次数:
173
题意:给出两个字符串s1和s2(长度不超过1000),问s1是否包含s2中的所有字符,若包含,则输出Yes,并输出s1中多余的字符个数;若不完全包含,则输出No,并输出缺少的个数。 思路:定义数组int cnt[128],遍历字符串s1,记录各个字符出现的次数,cnt[i]表示i对应的字符出现的次数 ...
分类:
其他好文 时间:
2018-08-29 01:12:36
阅读次数:
230