天若有情天亦老 月若无恨月常圆

Day1

score
cardcaptor   AAAAAAAATT
protal       WWWWWWWWWW
treasurehunt AAAAWXXXXX
map          AAATTTTTTT

cardcaptor

首先需要拆位做。

然后用线段树维护,对于区间\([l,r]\)需要记录的信息有:

  • \(0\)和\(1\)的个数。
  • 询问该区间的结果。

这样就可以轻松合并两个区间了。可惜常数比较大。

还有一种做法,十分精巧,基于该事实:令\(s_i\)表示\(\text{xor}_{j=0}^i a_j\),区间\([l,r]\)的异或和等于\(s_r \text{xor} s_{l-1}\)。

若询问\([l,r]\)的答案,仅需要查询\(s_{l-1\cdots r}\) \(0\)和\(1\)的个数。所以只需要维护\(s\),当然需要懒标记。

protal

表示我不会做期望题。。。

这题主要是从同一个地点有多个出发的门的问题,这个问题处理很经典,就略过了。^-^

treasurehunt

典型的最大权闭合子图。

map

典型的类插头DP。数据范围较小,随意做。

Day2

score
coloring  AAAWWWWWWW
qt        AAAAAAAAAA
necklace2 AAAAAAAAAA
math      WWWWWWWWWW

coloring

经典的博弈论。

qt

经典的数位DP。

necklace2

题目等价于,选出两个相邻的回文串,使得他们的长度和最长。

问题难在长度和超过了n怎么办。

我们可以枚举第一个中心,然后找到最长的回文串作为第一个回文串,然后在该回文串右边拼接一个最长的但和第一个加起来长度不超过n的回文串。

反证法可以证明正确性。

math

先补点常识:

  • 一个数最多只有一个逆元,反证法证明。
  • \[{a \over p} \mod p^k = {a \mod p^{k+1}\over p}\]
  • \[{1 - x^{n+1}\over 1 - x} = \sum_{i=1}^n x^i\]
  • 求\[\sum_i i^k\]可以用矩阵乘法或什么“伯努利数”。

然后,设\(f(n, p, k)\)为原问题,先把与p不互质的递归处理。

\[f(n,p,k) = f(n / p, p, k + 1) / p + ans\],这里的\(ans\)是与\(p\)互质的。

设\(i=ap + b\),那么有

\[{1 \over i} = {1\over ap+b}\]
\[={1\over b}{1 \over 1 - (- {ap \over b})}\]
\[={1\over b}{1 - ({ap \over b})^k \over 1 - (- {ap \over b})}\]
\[={1\over b}\sum_{i=1}^{k-1}({ap \over b})^k\]

然后用乱搞就可以了。

这里有个黑科技:

ll multiply(const ll &a, const ll &b, const ll &MOD) {
  /*
  ll ret = 0;
  ll s = a;
  for (ll i = b; i; i >>= 1) {
    if (i & 1) ret = (ret + s) % MOD;
    s = (s << 1) % MOD;
  }
  return ret;
  */
  ll t = (ll) ((double) a * b / MOD);
  ll ret = a * b - t * MOD;
  return (ret % MOD + MOD) % MOD;
}

GDKOI2016的更多相关文章

  1. [GDKOI2016]小学生数学题

    记 $F(n)=\sum\limits_{i=1}^{n}i^{-1}$ $G(n)=\sum\limits_{i=1,i\neq jp}^{n}i^{-1}$ 我们要算$F(n)\%p^k$ 那么 ...

  2. GDKOI2016 游记

    2016.2.19~2.15强行广州koi被虐…… DAY 0 19日下午到达,第六次入住中大西苑宾馆,怂逼抽签抽中外交大使特殊职位,然后就一边看<死神>一边等石门两位室友啦.必须吐槽宾馆 ...

  3. 【XSY1515】【GDKOI2016】小学生数学题 组合数学

    题目描述 给你\(n,k,p\)(\(p\)为质数),求 \[ \sum_{i=1}^n\frac{1}{i}\mod p^k \] 保证有解. \(p\leq {10}^5,np^k\leq {10 ...

  4. 【GDKOI2016】 魔卡少女 线段树

    题目大意:给你一个长度为n的序列${a_1....a_n}$,有$m$次操作 每次操作有两种情况:修改$a_i$的值,询问$[l,r]$中所有子区间的异或和. 数据范围:$n,m≤10^5$,$a_i ...

  5. GDKOI2016 爆零记

    滚粗了非常伤心>_< day 0 老师通知能够去试机,于是非常愉快地将近三点半左右的时间到了二中.然后发现老师已经准备关机房了,说我怎么才来.. .喂喂喂不是说三点半到五点的么 晚上本来想 ...

  6. [GDKOI2016]染色大战

    Description

  7. GDKOI2016总结——被虐之旅

    前言 一个被虐的旅程... 这次GDKOI的比赛虽然基本全上暴力,但是居然只有两道题得了分:30+30=60!我感觉整个人都不好了... day0 在去广州的路上,本来心情很好,但是坐在我斜后面的那位 ...

  8. 【JZOJ4359】【GDKOI2016】魔卡少女

    题目描述 君君是中山大学的四年级学生.有一天在家不小心开启了放置在爸爸书房中的一本古书.于是,君君把放在书中最上面的一张牌拿出来观摩了一下,突然掀起一阵大风把书中的其她所有牌吹散到各地.这时一只看上去 ...

随机推荐

  1. Debug目录下没有.exe文件

    记一下小笔记: VC6.0设置.exe文件的输出路径: Project->Settings->Link Category选择"General" 在Output file ...

  2. 通过jstack定位在线执行java系统故障_案例1

    问题描写叙述: 在一个在线执行的java web系统中,会定时执行一个FTP上传的任务,结果有一天发现,文件正常生成后却没有上传. 问题初步分析: 1.查看日志文件 发现这个任务仅仅打印了開始进入FT ...

  3. PID教程

    PID教程 介绍 本教程将向您展示了比例每一个比例项 (P)的特点,积分项(I)和微分项 (D) 控制,以及怎样使用它们来获得所需的响应.在本教程中,我们会考虑下面单位反馈系统: Plant[被控对象 ...

  4. 关于tableView刷新

    UITabelView的局部刷新 1. 刷新整个tableView用[self.tableView reloadData]; 2. [self.tableView reloadRowsAtIndexP ...

  5. JavaWeb学习过程 之c3p0的使用

    这几天在学习使用MVC模式来做几个小项目,在学习的过程中,用到了数据库连接池.便特意去学习了一下. 一.谈一谈为什么要使用数据库连接池 在开发基于数据库的web程序时,传统的模式(在servlet,b ...

  6. Immediate Decodability

    Description An encoding of a set of symbols is said to be immediately decodable if no code for one s ...

  7. BZOJ 1606: [Usaco2008 Dec]Hay For Sale 购买干草( dp )

    -------------------------------------------------------------------- #include<cstdio> #include ...

  8. MYSQL存储过程事务列子

    CREATE DEFINER=`root`@`localhost` PROCEDURE `createBusiness`(parameter1 int) BEGIN #Routine body goe ...

  9. codeforces 417D. Cunning Gena 状压dp

    题目链接 D. Cunning Gena time limit per test 1 second memory limit per test 256 megabytes input standard ...

  10. Linux中fork()函数详解(转)

    一.fork入门知识 一个进程,包括代码.数据和分配给进程的资源.fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程,也就是两个进程可以做完全相同的事,但如果初始参数或者传入的变量不同, ...