07 2015 档案

摘要:嘛……以一种奇怪的姿势滚粗了…… 如果这个Blog能给未来的OIer们一些帮助的话,它也不枉存在了…… 我的OI之路也能以另一种形式延续下去吧…… 也许能搞ACM的话会再开?…… 不管怎么说,各位再见了…… Bless All …… 阅读全文
posted @ 2015-07-20 08:58 AutSky_JadeK 阅读(454) 评论(0) 推荐(0)
摘要:#includeusing namespace std;#define BN 380000const int table[]={0,185815,378154,561654,744350,886427,1075474,1310828,1513089,1705514,1867434,1971454,2... 阅读全文
posted @ 2015-07-15 20:18 AutSky_JadeK 阅读(387) 评论(0) 推荐(0)
摘要:#includeusing namespace std;#define BN 380000const int table[]={0,79595,158824,202174,246052,316791,359819,411663,482117,517179,574651,649803,674577,7... 阅读全文
posted @ 2015-07-15 20:02 AutSky_JadeK 阅读(269) 评论(0) 推荐(0)
摘要:块大小为10^5。#includeusing namespace std;const int table[] = {0, 4784, 8978, 12981, 16901, 20732, 24523, 28249, 31916, 35585, 39176, 42818, 46430, 49962, ... 阅读全文
posted @ 2015-07-12 17:28 AutSky_JadeK 阅读(351) 评论(0) 推荐(0)
摘要:验证一个数是不是优美的:设数位之和为sum,若sum mod 2 != 0,则不优美。否则考虑枚举这个数的每一位,将之前所有位任意相加产生的所有 数字和 和 当前位 的和塞到集合里,最终判断集合中是否存在sum/2即可,若暴力,复杂度是1+2+4+...,无法承受,所以可以压位。然后对10^9分块,... 阅读全文
posted @ 2015-07-12 17:08 AutSky_JadeK 阅读(474) 评论(0) 推荐(0)
摘要:线段树每个结点维护5个域:整个区间的MST。将两个左端点连通,两个右端点不连通,整个区间内选择2*(r-l+1)-2条边的最小生成森林,有两个连通块。将两个右端点连通,两个左端点不连通,整个区间内选择2*(r-l+1)-2条边的最小生成森林,有两个连通块。两个左端点不连通,两个右端点也不连通,整个区... 阅读全文
posted @ 2015-07-11 09:29 AutSky_JadeK 阅读(635) 评论(0) 推荐(0)
摘要:线段树的每个叶子节点存一列。每个节点维护六个域,分别是左上左下、左上右上、左上右下、左下右上、左下右下、右上右下在区间内部的连通性,不考虑绕出去的情况。初始每个叶子的左上左下、右上右下是连通的。每次修改纵列时,直接去线段树里修改。每次修改横行时,将其左右两列全都pushup一遍。具体怎么维护,并不难... 阅读全文
posted @ 2015-07-09 14:44 AutSky_JadeK 阅读(224) 评论(0) 推荐(0)
摘要:我们知道,求一段序列的最大子段和是O(n)的,但是这样是显然会超时的。我们需要一个数据结构来支持修改和计算的操作,对于这种修改一个而查询区间的问题,考虑使用线段树。在线段树中,除了左端点,右端点,左儿子指针,右儿子指针之外,新开4个域——max,maxl,maxr,sum,其中sum为该区间的和,m... 阅读全文
posted @ 2015-07-07 21:46 AutSky_JadeK 阅读(257) 评论(0) 推荐(0)

TVアニメ「Charlotte(シャーロット)」公式サイト TVアニメ「Charlotte(シャーロット)」公式サイト