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

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. XML 文档解析操作

    sing System;using System.Data;using System.Configuration;using System.Web;using System.Web.Security; ...

  2. 今天碰到的angular 中的一个小坑

    最近在自个儿研究angular,在写一个demo的时候总是有问题,最后发现居然是大小写的问题,卧槽 特tm的坑爹了,代码如下: <!DOCTYPE html> <html lang= ...

  3. iOS 10中如何搭建一个语音转文字框架

    在2016WWDC大会上,Apple公司介绍了一个很好的语音识别的API,那就是Speech framework.事实上,这个Speech Kit就是Siri用来做语音识别的框架.如今已经有一些可用的 ...

  4. mybatis foreach where test用法

    <select id="selectAny" resultType="user" parameterType="user"> s ...

  5. JS性能

    获取以下属性  会等待对应元素渲染完成  才继续执行 * offsetTop, offsetLeft, offsetWidth, offsetHeight* scrollTop, scrollLeft ...

  6. SubLime BracketHighlighter 配置

    很多插件在github上都有比较详细的说明  告知安装位置什么的一般来说 插件都是放在Packages目录里面的   从Github上下载 解压得到的文件夹然后放入到Packages中这个目录在哪里呢 ...

  7. 求1+2+...+n

    题目:求1+2+…+n,要求不能使用乘除法.for.while.if.else.switch.case等关键字以及条件判断语句(A?B:C). 程序很简单,就看想到想不到了.悲剧,我属于后者... 算 ...

  8. Qt实战之开发CSDN下载助手 (3)(结束篇)

    再次申明下,开发这款助手,主要是用来学习交流,并不是用来开发什么刷积分的软件. 好了,言归正传,这次,主要的分析下CSDN的下载,评论,验证码获取机制等等. 好,回到第二篇,当我们成功登陆时,CSDN ...

  9. Python中type与Object的区别

    Python中type与Object的区别 在查看了Python的API后,总算明白了.现在总结如下: 先来看object的说明: Python中关于object的说明很少,甚至只有一句话: clas ...

  10. 什么是Thrift

    起源 百度百科怎么说 thrift是一个软件框架,用来进行可扩展且跨语言的服务的开发. 它结合了功能强大的软件堆栈和代码生成引擎,以构建在 C++, Java, Python, PHP, Ruby, ...