GDKOI2016
天若有情天亦老 月若无恨月常圆
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的更多相关文章
- [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$ 那么 ...
- GDKOI2016 游记
2016.2.19~2.15强行广州koi被虐…… DAY 0 19日下午到达,第六次入住中大西苑宾馆,怂逼抽签抽中外交大使特殊职位,然后就一边看<死神>一边等石门两位室友啦.必须吐槽宾馆 ...
- 【XSY1515】【GDKOI2016】小学生数学题 组合数学
题目描述 给你\(n,k,p\)(\(p\)为质数),求 \[ \sum_{i=1}^n\frac{1}{i}\mod p^k \] 保证有解. \(p\leq {10}^5,np^k\leq {10 ...
- 【GDKOI2016】 魔卡少女 线段树
题目大意:给你一个长度为n的序列${a_1....a_n}$,有$m$次操作 每次操作有两种情况:修改$a_i$的值,询问$[l,r]$中所有子区间的异或和. 数据范围:$n,m≤10^5$,$a_i ...
- GDKOI2016 爆零记
滚粗了非常伤心>_< day 0 老师通知能够去试机,于是非常愉快地将近三点半左右的时间到了二中.然后发现老师已经准备关机房了,说我怎么才来.. .喂喂喂不是说三点半到五点的么 晚上本来想 ...
- [GDKOI2016]染色大战
Description
- GDKOI2016总结——被虐之旅
前言 一个被虐的旅程... 这次GDKOI的比赛虽然基本全上暴力,但是居然只有两道题得了分:30+30=60!我感觉整个人都不好了... day0 在去广州的路上,本来心情很好,但是坐在我斜后面的那位 ...
- 【JZOJ4359】【GDKOI2016】魔卡少女
题目描述 君君是中山大学的四年级学生.有一天在家不小心开启了放置在爸爸书房中的一本古书.于是,君君把放在书中最上面的一张牌拿出来观摩了一下,突然掀起一阵大风把书中的其她所有牌吹散到各地.这时一只看上去 ...
随机推荐
- iOS 用UISearchDisplayController实现查找功能
UISearchDisplayController是iOS中用于处理搜索功能的控制器,此控制器需要和UISearchBar结合使用 示例代码如下: // // WKRootViewController ...
- Nmon的安装及使用
1.安装软件 1) 用root用户登录系统,建立目录:#mkdir /nmon 2) 通过FTP将下载的nmon工具上传至服务器 192.168.40.212目录/nmon下. 3) 修改tar包权 ...
- codeforces 557D. Vitaly and Cycle 二分图染色
题目链接 n个点, m条边, 问最少加几条边可以出现一个奇环, 在这种情况下, 有多少种加边的方式. 具体看代码解释 #include<bits/stdc++.h> using names ...
- [LeetCode]题解(python):105-Construct Binary Tree from Preorder and Inorder Traversal
题目来源: https://leetcode.com/problems/construct-binary-tree-from-preorder-and-inorder-traversal/ 题意分析: ...
- (Problem 73)Counting fractions in a range
Consider the fraction, n/d, where n and d are positive integers. If nd and HCF(n,d)=1, it is called ...
- Primavera 6.0
Primavera 6.0(原p3e/c)荟萃了P3软件20年的项目管理精髓和经验,采用最新的IT技术,在大型关系数据库Oracle和MS SQL Server上构架起企业级的.包涵现代项目管理知识体 ...
- android 百度最新地图sdk包怎么去除 放大缩小按钮
// 隐藏缩放控件 int childCount = mMapView.getChildCount(); View zoom = null; ; i < childCount; i++) { V ...
- HDU 3802 Ipad,IPhone
http://wutyyzchangde.blog.163.com/blog/static/172226566201132311311374/ #include <cstdio> type ...
- HDU 1507 Uncle Tom's Inherited Land*
题目大意:给你一个矩形,然后输入矩形里面池塘的坐标(不能放东西的地方),问可以放的地方中,最多可以放多少块1*2的长方形方块,并输出那些方块的位置. 题解:我们将所有未被覆盖的分为两种,即分为黑白格( ...
- Swift调用Objective C的FrameWork
很多Github的库经过很多年的发展,源码都是OC写的,,所以,用Swift调用OC的库就是开发中难免遇到的的一个问题,本文以AFNetworking为例,讲解如何跨语言调用. 第一步 创建一个空的工 ...