A

=w=

B

qwq

C

wvw

D(multiset)

题意:

有n(n<=1e5)个数,希望通过把一个位置y的数字放到位置x上这个操作,使得新序列的某个前缀和等于总和的一半,问这样的操作是否存在

分析:

从前往后扫一遍,开两个multiset即可

E(三分)

题意:

01背包问题,但n<=1e5,m<=3e5,1<=wi<=3,1<=ci<=1e9

分析:

肯定根据wi=1 2 3来分组

可以枚举wi=3用几个,再枚举wi=2用几个,就能得到wi=1用几个

但是这样是n^2的

注意到枚举wi的时候,是个单峰函数,所以可以三分,就过了

题解给了个预处理的做法,预处理出(cost,cnt1,cnt2)表示cnt1个wi=1,cnt2个wi=2物品,最优价值是cost

这个东西是可以顺推的

F(二分+二分图最大点权独立集)

题意:

每个物品有pi ci li 三属性(n<=100),你需要定一个最小的level,只能取那些li<=level的物品,能够取若干个物品使得它们的Σpi>=k(k<=1e5),但是取的这些物品中每两个的ci和必须是合数。

分析:

肯定先去二分一下level

把那些ci加起来是素数的数字连起来,很明显就是要求这个图的最大点权独立集

仔细分析发现,两个偶数加起来肯定不是素数,两个奇数加起来肯定不是素数(特殊考虑1的情况)

所以这其实是个二分图

所以对于一般情况就通过最大流求下二分图的最大点权独立集即可

关于1的问题,肯定只能选一个1,就选那个pi最大的1来参与建图

G(dp+next转移)

题意:

给一个字符串s,一个字符串t

字符串s有些位置是?,你需要给?赋一些字母,使得s中t出现次数最多,输出最多出现次数

lens<=1e5,lent<=1e5,lens*lent<=1e7

分析:

很明显的dp,用next进行转移

提前对t预处理出next[i][j]表示当前匹配t的第i位,来了一个字母j和其匹配,那么接下来指针会移到哪个位置

然后就dp[i][j]表示匹配s的前i个字母,匹配t的前j个字母,t在s中的最多出现次数

转移的时候如果遇到?就枚举26个字母,否则就用本身字母转移

时间复杂度O(lens*lent*26)

Codeforces Educational Round 21的更多相关文章

  1. Codeforces Educational Round 33 题解

    题目链接   Codeforces Educational Round 33 Problem A 按照题目模拟,中间发现不对就直接输出NO. #include <bits/stdc++.h> ...

  2. Codeforces Educational Round 92 赛后解题报告(A-G)

    Codeforces Educational Round 92 赛后解题报告 惨 huayucaiji 惨 A. LCM Problem 赛前:A题嘛,总归简单的咯 赛后:A题这种**题居然想了20m ...

  3. [CodeForces]Educational Round 52

    幸好我没有打这场,我VP的时候在C题就卡死了,我果然还是太菜了. A Vasya and Chocolate 题意:一个巧克力\(c\)元,买\(a\)赠\(b\),一共有\(n\)元,问能买几个巧克 ...

  4. Codeforces Educational Round 37

    Solved   CodeForces 920A Water The Garden   Solved   CodeForces 920B Tea Queue   Solved   CodeForces ...

  5. Codeforces Educational Round 57

    这场出题人好像特别喜欢998244353,每个题里都放一个 A.Find Divisible 考察选手对输入输出的掌握 输出l 2*l即可(为啥你要放这个题,凑字数吗 #include<cstd ...

  6. Codeforces Educational round 58

    Ediv2 58 随手AK.jpg D 裸的虚树,在这里就不写了 E 傻逼贪心?这个题过的比$B$都多.jpg #include <cstdio> #include <algorit ...

  7. Codeforces Educational Round 23

    A emmmmmmmmm B emmmmmmmmm C(套路) 题意: 给定n和s(n,s<=1e18),计算n以内有多少个数x满足(x-x的各个位置数字之和)>=s 分析: 容易想到如果 ...

  8. codeforces educational round 25

    A 出题人不给样例解释...具体程序 #include<bits/stdc++.h> using namespace std; int n; ]; int main() { scanf() ...

  9. [Codeforces Educational Round 71]Div. 2

    总结 手速场...像我这种没手速的就直接炸了... 辣鸡 E 题交互,少打了个 ? 调了半个小时... 到最后没时间 G 题题都没看就结束了...结果早上起来被告知是阿狸的打字机...看了看题一毛一样 ...

随机推荐

  1. 网页制作常用的CSS知识

    在制作网页中,我们会用到很多CSS的知识,在这里我简单的总结了一些. div    划分区块 ul,li 无序列表(配合划分区块) ol,li 有序列表 a 超链接标签 p 段落标签 h 标题标签 i ...

  2. Custom Operators

    New operators are declared at a global level using the operator keyword, and are marked with the pre ...

  3. 使用Let's Encrypt 生成免费的ssl证书的详细过程

    参考连接:https://github.com/diafygi/acme-tiny 中文:https://hacpai.com/article/1487899289204 目前我了解可以生成免费证书的 ...

  4. pycharm 编写前端代码一些小技巧

    <!DOCTYPE html><html lang="zh-CN"><head> <meta charset="UTF-8&qu ...

  5. 解决【npm ERR! Unexpected end of JSON input while parsing near '...sh_time":141072930277'】方案

    问题描述执行npm install的时候报错npm ERR! Unexpected end of JSON input while parsing near '...sh_time":141 ...

  6. 02CSS基本语法

    CSS基本语法 id选择符 在HTML文档中,需要唯一标识一个元素时,就会赋予它一个id标识,以便在对整个文档进行处理时能够很快地找到这个元素. 而id选择符就是用来对这个单一元素定义单独的样式.#号 ...

  7. A10. JVM 对象

    [概述] 首先需要了解对象在内存中的存储布局,其次需要了解对对象的访问定位. [对象的内存布局] 在 HotSpot 虚拟机中,对象在内存中存储的布局可以分为 3 块区域:对象头(Header).实例 ...

  8. kafka 服务端消费者和生产者的配置

    在kafka的安装目录下,config目录下有个名字叫做producer.properties的配置文件 #指定kafka节点列表,用于获取metadata,不必全部指定 #需要kafka的服务器地址 ...

  9. NOIP2016玩具迷题

    题目大意就不说了,反正水水就过了. 主要在于找01关系. 代码: #include<cstdio> int n,m; struct node { ]; int f; }a[]; int m ...

  10. [SCOI2011]棘手的操作(可并堆/并查集/线段树)

    我懒死了 过于棘手 但这题真的很水的说 毕竟写啥都能过 常见思路: ①:由于不强制在线,所以重新编号之后线段树维护 ②:用各种可以高速合并的数据结构,比如可并堆,可并平衡树啥的 讲一种无脑算法: 对于 ...