03 2020 档案

摘要:这道题的思路非常巧妙,如果两点之间的距离是$2^k$,那么就建一条长度为1的边,然后再跑一遍最短路就好了。 推的方法就是$f(i, j, len) = 1$ 如果 $f(i, k, len - 1) = 1$ 并且$f(k, j, len - 1) = 1$,其中$f(i, j, len)$指的是$ 阅读全文
posted @ 2020-03-14 16:53 cminus 阅读(134) 评论(0) 推荐(0)
摘要:新做了两道题居然和之前套路是一样的,就不重复了 有趣的是 while (!s.empty() && a[s.top()] < a[i]) 这个循环里,< 和 <=这两个都可以,模拟了一下发现,当你想把一个数字入栈的时候,如果前面一个数字和当前这个一样,虽然当前这个数字不能向前搜到最深,但是前一个数字 阅读全文
posted @ 2020-03-11 19:34 cminus 阅读(184) 评论(0) 推荐(0)
摘要:挂机一个多小时都没想出来这道题,不过好在前四题切的快还是上分了 看到有人说这题是区间DP裸题...我怀疑我要回炉再造了 两种解法,一种是O(n^3)的区间DP 先预处理哪些段可以合并成为一个数字,复杂度n^3,再区间DP f(i, j) = min(f(i, k) + f(k + 1, j)) ( 阅读全文
posted @ 2020-03-11 13:39 cminus 阅读(205) 评论(0) 推荐(0)
摘要:又上分了,好像打的还可以就会懒得补后面的题 A.Kuroni and the Gifts sort一下,没什么好说的 B.Kuroni and Simple Strings 很容易(并非)可以看出最多只需要一次就可以了,举个例子假设你两次删除的分别是(())和 (),你会发现你只需要删除( ( )  阅读全文
posted @ 2020-03-04 15:53 cminus 阅读(152) 评论(0) 推荐(0)