上一页 1 ··· 23 24 25 26 27 28 29 30 31 ··· 66 下一页
摘要: LINK: "Uim的情人节礼物·其之壱" 壱 古代通壹 常在日文中出现。 完全可以使用STL —— prev_permutation来解决。 不过我简单了解了一下康托展开。 这是一个一个排列对应一个数字的双射. 具体的 对于一个排列 有唯一一个数字和其对应。 计算方法为 见code. 实际上可以使 阅读全文
posted @ 2020-04-29 19:29 chdy 阅读(235) 评论(0) 推荐(1) 编辑
摘要: LINK: "信用卡凸包" 当 R==0的时候显然是一个点的旋转 之后再求凸包即可。 这里先说点如何旋转 如果是根据原点旋转的话 经过一个繁杂的推导可以得到一个矩阵。 [cosw, sinw] [sinw,cosw] 这个矩阵就是旋转矩阵 乘一下当前的坐标 [x,y] 就可以得到逆时针旋转w度的答案 阅读全文
posted @ 2020-04-29 18:55 chdy 阅读(128) 评论(0) 推荐(0) 编辑
摘要: LINK: "集合计数" 容斥简单题 却引出我对广义容斥的深思。 一直以来我都不理解广义容斥是为什么 在什么情况下使用。 给一张图: 这张图想要表达的意思就是这道题目的意思 而求的东西也和题目一致。 特点:求出某个集合恰好为k的个数。 转换:求出集合 =k的个数或者=k个数 如上图可见 又很多重复的 阅读全文
posted @ 2020-04-28 22:29 chdy 阅读(138) 评论(0) 推荐(0) 编辑
摘要: LINK: "求正整数" 比较难的高精度。 容易想到贪心不过这个贪心的策略大多都能找到反例。 考虑dp. f[i][j]表示前i个质数此时n的值为j的最小的答案。 利用高精度dp不太现实。就算上FFT也会T掉。 乘积的形式 我们可以将其变成对数的形式就很容易转移了。 转移时记录决策 然后 最后做一遍 阅读全文
posted @ 2020-04-28 21:08 chdy 阅读(204) 评论(0) 推荐(0) 编辑
摘要: LINK: "Multiple Testcases" 得到很多种做法。其中O(n)的做法值得一提。 容易想到二分答案 check的时候发现不太清楚分配的策略。 需要先考虑如何分配 容易发现大的东西会对小的产生影响 而 对于某个能放的位置 我们放大的一定比小的要优。所以为了防止出现对小的影响到了需要调 阅读全文
posted @ 2020-04-28 20:03 chdy 阅读(163) 评论(0) 推荐(0) 编辑
摘要: LINK: "游戏" 还是过于弱鸡 没看出来是个二项式反演,虽然学过一遍 但印象不深刻。 二项式反演:有两种形式 一种是以恰好和至多的转换 一种是恰好和至少得转换。 设$f_i$表示至多的方案数 $g_i$表示恰好的方案。 则有 $f_n=\sum_{i=0}^nC(n,i)\cdot g_i$ 根 阅读全文
posted @ 2020-04-27 21:24 chdy 阅读(161) 评论(0) 推荐(0) 编辑
摘要: LINK: "Placing Rooks" 丢人现场.jpg 没看到题目中的条件 放n个rook 我以为可以无限放 自闭了好半天。 其实只用放n个。那么就容易很多了。 可以发现 不管怎么放 所有列/所有行 都必须得放有。 那么最多只有n 1个pairs 当k==0时 容易发现是一个n!. 总之还是迷 阅读全文
posted @ 2020-04-27 20:00 chdy 阅读(311) 评论(0) 推荐(0) 编辑
摘要: LINK: "I hate Matrix Construction" 心情如题目名称。 主要说明一下构造的正确性。 准确来说这道题困扰我很久。 容易发现可以拆位构造。 这样题目中的条件也比较容易使用。 最后等价于每一行每一列有一个 当前行/列有一个1或者0的限制。 考虑直接进行构造。 容易发现这类似 阅读全文
posted @ 2020-04-27 16:13 chdy 阅读(227) 评论(0) 推荐(0) 编辑
摘要: LINK: "T3" 比较好的题目 考试的时候被毒瘤的T2给搞的心态爆炸 这道题连正解的思路都没有想到。 一看到题求删除点的最少个 可以使得不连通。 瞬间想到最小割 发现对于10分直接跑最小割即可。 不过想要通过n^2需要一些奇技 如从Si跑到Tj 想要得到i到j+1的答案 只需要再从Tj跑到Tj+ 阅读全文
posted @ 2020-04-27 14:26 chdy 阅读(153) 评论(0) 推荐(0) 编辑
摘要: LINK: "Permutation" 休闲一下 开了一道构造题。 看起来毫无头绪 其实仔细观察第二个条件 0 1)<<1; calc(cc,k); rep(1,cc 2,i)printf("%d ",a[i]); if(n&1)printf("%d ",n 2 1),printf("%d ",n 阅读全文
posted @ 2020-04-26 19:13 chdy 阅读(107) 评论(0) 推荐(0) 编辑
上一页 1 ··· 23 24 25 26 27 28 29 30 31 ··· 66 下一页