codeforces 627 D. Preorder Test

二分 + 树dp

做logn次树dp

codeforces 578D.LCS Again

给出一个字符串str,长度n<=10^6,由m种字符组成,问有多少个长度为n,与str的LCS 为 n-1的字符串t

这道题可以用dp套dp,但是我不会阿

可以找规律统计,考虑:

1.取哪个位置

2.放在哪个位置

3.放什么字符

可以知道,如果str分成了block份,每一份的字符相同,则

ans = block * n * (m - 1)

但是这样是会有一些重复计算的

这种情况会重复计算abababab这样交叉的部分

减去多计算的部分就可以了

codeforces 626 E. Simple Skewness

给出一个数组,从中取若干个数,使得新数组的平均数 - 中位数 最大

可以证明,取的一定是奇数个数

如果取了偶数个数,把最中间2个数较大的一个数去掉,情况不会变差,列个式子算一下就可以证明了。

所以奇数个数,我们就可以枚举中位数

确定了中位数后,

每次从小的数中拿x个,大的数拿x个,ans是关于x的函数,而且是先增大再减小的

就可以三分出此时最优的长度x

看了Mektpoy的代码,学到了三分的更好的姿势:

      int l = ,r = min(i-,n-i);
while(r - l > ){
int mid1 = l + (r - l) / ;
int mid2 = r - (r - l) / ;
if(check(i,mid1) < check(i,mid2))
l = mid1;
else
r = mid2;
}
check(i,l);
check(i,r);
if(l + < r)
check(i,l+);

注意这里跳出循环后,可以是:

r - l = 1

r - l = 2  这个时候还需要check(l + 1)

r - l = 0 ???

所以需要check:l,r,l+1(l + 1 < r的情况下)

codeforces 600 E. Lomsat gelral

每一个节点建一棵平衡树,启发式合并,O(nlognlogn)

codeforces 117B Very Interesting Game

暴力

codeforces C. Mike and Foam

莫比乌斯 O(nsqrt(n))

codeforces 449 C. Jzzhu and Apples

贪心

487C. Prefix Product Sequence

构造

a[1] = 1,a[n] = n,a[i] = i * inv(i - 1)  (2 < i < n)

222 C. Reducing Fractions

分解因子

78 C. Beaver Game

博弈

691 F. Couple Cover

2维暴力统计,但是由于有i * j <= n 这个条件,其实复杂度是

n / 1 + n / 2 + n / 3 + ... + n / n = O(nlogn)的

225 E. Unsolvable

设第i个梅森素数是2 ^ t - 1,答案就是要求2 ^ (t - 1) - 1,t可以oeis查到

293 C. Cube Problem

给出n,求方程(a+b+c)^3 = a^3 + b^3 + c^3 + n的(a,b,c)的解数

分a = b = c,a = b,a != c,a < b < c 3种情况,暴力枚举,检验下就可以了

594  D REQ

好题

离线处理  bit维护前缀积

codeforces 练习的更多相关文章

  1. python爬虫学习(5) —— 扒一下codeforces题面

    上一次我们拿学校的URP做了个小小的demo.... 其实我们还可以把每个学生的证件照爬下来做成一个证件照校花校草评比 另外也可以写一个物理实验自动选课... 但是出于多种原因,,还是绕开这些敏感话题 ...

  2. 【Codeforces 738D】Sea Battle(贪心)

    http://codeforces.com/contest/738/problem/D Galya is playing one-dimensional Sea Battle on a 1 × n g ...

  3. 【Codeforces 738C】Road to Cinema

    http://codeforces.com/contest/738/problem/C Vasya is currently at a car rental service, and he wants ...

  4. 【Codeforces 738A】Interview with Oleg

    http://codeforces.com/contest/738/problem/A Polycarp has interviewed Oleg and has written the interv ...

  5. CodeForces - 662A Gambling Nim

    http://codeforces.com/problemset/problem/662/A 题目大意: 给定n(n <= 500000)张卡片,每张卡片的两个面都写有数字,每个面都有0.5的概 ...

  6. CodeForces - 274B Zero Tree

    http://codeforces.com/problemset/problem/274/B 题目大意: 给定你一颗树,每个点上有权值. 现在你每次取出这颗树的一颗子树(即点集和边集均是原图的子集的连 ...

  7. CodeForces - 261B Maxim and Restaurant

    http://codeforces.com/problemset/problem/261/B 题目大意:给定n个数a1-an(n<=50,ai<=50),随机打乱后,记Si=a1+a2+a ...

  8. CodeForces - 696B Puzzles

    http://codeforces.com/problemset/problem/696/B 题目大意: 这是一颗有n个点的树,你从根开始游走,每当你第一次到达一个点时,把这个点的权记为(你已经到过不 ...

  9. CodeForces - 148D Bag of mice

    http://codeforces.com/problemset/problem/148/D 题目大意: 原来袋子里有w只白鼠和b只黑鼠 龙和王妃轮流从袋子里抓老鼠.谁先抓到白色老鼠谁就赢. 王妃每次 ...

  10. CodeForces - 453A Little Pony and Expected Maximum

    http://codeforces.com/problemset/problem/453/A 题目大意: 给定一个m面的筛子,求掷n次后,得到的最大的点数的期望 题解 设f[i]表示掷出 <= ...

随机推荐

  1. 【转】JavaScript 经常忽略的 7 个基础知识点

    原文转自:http://bbs.html5cn.org/thread-83442-1-1.html 1. 在 String.prototype.replace 方法中使用 /g 和 /i标志位 令很多 ...

  2. Day22_IO第四天

    1.合并流(序列流)-) { //不断的在a.txt上读取字节 fos.write(b1); //将读到的字节写到c.txt上 } fis1.close(); //关闭字节输入流 FileInputS ...

  3. 利用 ipset 封禁大量 IP

    使用 iptables 封 IP,是一种比较简单的应对网络攻击的方式,也算是比较常见.有时候可能会封禁成千上万个 IP,如果添加成千上万条规则,在一台注重性能的服务器或者本身性能就很差的设备上,这就是 ...

  4. HashMap归档-超越昨天的自己系列

    java HashMap 读一下源码,一个数组存储数据: transient Entry[] table; 内部存key和value的内部类: static class Entry<K,V> ...

  5. gulp基本用法

    嗨,小伙伴们,大家周五好,又到了一周中最最最期待的周五啦啦~~~ 这几天一直在研究gulp的使用方法,今天抽时间来整理一下基本步骤. gulp 的使用流程: 安装nodejs ->安装git(方 ...

  6. 面试时被问到js的绑定事件,我居然不知道怎么回答。回来查了下,做个笔记

    事件绑定是几种方法 以下为例: <button id='btn'>click me</button> function Btn(){ alert('click'); } 1.直 ...

  7. 【Cocos2d-x 3.x】 场景切换生命周期、背景音乐播放和场景切换原理与源码分析

    大部分游戏里有很多个场景,场景之间需要切换,有时候切换的时候会进行背景音乐的播放和停止,因此对这块内容进行了总结. 场景切换生命周期 场景切换用到的函数: bool Setting::init() { ...

  8. python基础篇

    python脚本开头 #!/usr/bin/env python# -*- coding: utf-8 -*print "你好,世界" 不要问为什么,记住就好了 变量定于的规则 变 ...

  9. Matlab语法

    第一节 基本数值计算1. 变量:分为数值变量和字符变量 2. 常量:计算机中不变的量.如i.j.pi.NaN(不确定).Inf(无穷大) 3. 字符变量:将字符串作为变量.有三种方法表示:    (1 ...

  10. PHP 数组转码

    /** * 数组转码 * @param array $arr 要转码的数组 * @param string $in_charset 输入的字符集 * @param string $out_charse ...