随笔分类 - CF
摘要:题意:给你一个数列a,a[i]表示斐波那契数列的下标为a[i],求区间对应斐波那契数列数字的和,还要求能够维护对区间内所有下标加d的操作 分析:线段树 线段树的每个节点表示(f[i],f[i-1])这个数组 因为矩阵的可加性,所以可以进行lazy操作 我最开始的想法是每个节点lazy表示该区间下标加
阅读全文
摘要:A、= = B、 题意:给出n个数和n1和n2,从n个数中分别选出n1,n2个数来,得到n1个数和n2个数的平均值,求这两个平均值的最大和 分析:排个序从后面抽,注意先从末尾抽个数小的,再抽个数大的 C、 题意:有n个队伍比赛,每两个队伍比赛结束后输的人退场,赢的人场次增加1,现在由你来设计比赛顺序
阅读全文
摘要:A、快速幂 B、 题意:求ai^aj=x的数对个数,x和a[]给定 分析:a^b=c,则a^c=b,所以求ai^x=aj的个数,枚举一遍即可 C、 题意:给你一个有向图,每个点的出边只有一条,求最小的n,使得从任意点走2n步都可以走回原点 分析:先判断是否存在,如果存在,那么图中肯定是一个个的简单环
阅读全文
摘要:A、(分类讨论) 题意:你有n本书,有三种买书方案,花a元买1本,花b元买2本,花c元买3本,问最少花多少钱,使得你书的总数是4的倍数 分析:分类讨论的题,但是要注意你可以买超过4本书……可以买5本、6本、7本让你达到4的倍数 B、=w= C、(构造) 题意:设mex[i][j]表示一段区间i,j内
阅读全文
摘要:A、 题意:给你一串字符串(<=100),将ogo ogogo ogogogo ogogogogo……这种全部缩成***,输出缩后的字符串 分析:第一遍扫对于那些go的位置,记录下next[i]表示最远能扩展到的位置,第二遍扫只要看o即可,如果o后面的位置next存在,那么说明这一段全部缩为***,
阅读全文
摘要:A、B:=w= C: 题意:给你一个a数组和b数组,a数组中大的数可以吃掉小的数并且给它加上吃掉的数,问能否达到b数组的状态,如果可以输出方案 分析:首先肯定想到分块,于是子问题就是判断一段数能否吃干净 可以找到这段数之间的最大值,从这个最大值开始吃一边,再反向吃,特判一些特殊的情况 O(n)的 D
阅读全文
摘要:A、B:=w= C: 题意: 你需要制作n瓶药水,每一瓶药水需要x秒。 你现在有m种A魔法,花费b[i],使得每一瓶药水的花费代价降为a[i],只能用一次。 有K种B魔法,花费d[i],使得瞬间制作好c[i]瓶药水,只能用一次。 你最多花费s的魔法值 问你最快完成要多少秒。 分析:题目所给的B魔法都
阅读全文
摘要:A、B:模拟 C、构造下就行了 D、题意:n个参加ACM的队(n<=300000),每个队都有自己的初始气球数和重量,规定如果气球数>重量,那么此队就会飞起来,淘汰出局,你现在是第一组,你可以给其他组气球,问你最高能排名多少,你的排名是气球数严格大于你气球数的队伍数+1。 分析:贪心的想法,将那些气
阅读全文
摘要:A、B、C:=,= D:题意:有n(n<=1e5)天,每天可以选择考某一门科目或者在家复习,一共m(m<=1e5)门科目,每个科目都有特定的需要复习时间,只有复习了足够的天数才可以考并且考过。给出每天的信息,0代表无考试科目,其他代表那天考那一门(当然你可以选择不考,这天复习),问要考过所有科目至少
阅读全文
摘要:A、B、C、D:=w= E:题意:给你一个无向图,让你给每条边定向,使得入度=出度的点的个数最多 分析:易得度数为奇数的点肯定有偶数个,如果把这偶数个点一一对应连起来,那么图中所有点的度数都为偶数,那么必定存在一条欧拉回路,而这些欧拉回路使得原图中度数为偶数的点都可以做到入度=出度,所以ans=原图
阅读全文
摘要:A B:0.0 C:题意:n个点m条边的DAG图(n,m<=5000),保证没有环且都连通,每个边有边权,求一条1->n的路径,使得经过的点最多,但边权和<=T(T<=10^9) 分析:DAG图一般都能DP解决 f[i][j]表示到了第i个点,已经经过了j个点花费的最少边权,last[i][j]就记
阅读全文
摘要:A B C :=w= D:两个人得分互不影响很关键 一种是f[i][j]表示前i轮,分差为j的方案数 明显有f[i][j]=f[i-1][j-2k]+2*f[i-1][j-2k+1]+...+(2k+1)f[i-1][j]+... 枚举是K*T*T,转移是K 超时 不过发现转移的时候可以理解为j是j
阅读全文
摘要:A;=w= B:=w= C:题意:有一排树,有的树已经上色,有的树没有上色,只能给没上色的树上色,一共m种颜色,不同的树上不同的色花费不同,涂完色后,连续颜色的树成为一段。对于给定的段数k,求出最小花费 分析:不是贪心就是dp,这很显然不是贪心 f[i][j][k]表示前i个树,第i个树涂色是j,已
阅读全文
摘要:A:= v = B:^ w ^ C:一天n个小时,一个小时m分(n,m十进制),一个手表有两部分,左边表示时,右边表示分,但都是7进制,而且手表上最多只能有7个数字且数字不能重复,现在要你算出能正确表示出多少个时间(不够位需要补0)。因为进制只有7,所以可以枚举所有的7进制数,然后再切成7组,分为左
阅读全文
摘要:A:统计个数题,要注意ans+=a*b+c*d中,如果a*b>int,那么即使ans是long long也会越界,所以ans+=(long long)a*b+(long long)c*d B:模拟一下删的过程 C:定义一个节点u是sad当且仅当u的子节点中存在一个节点v,使得dist(u,v)>a[
阅读全文
摘要:题目:http://codeforces.com/problemset/problem/519/E题意:给你一个n个点的树,有m个询问(x,y),对于每个询问回答树上有多少个点和x,y点的距离相等分析:对于x,y,容易知道距离相等的点是链x->y上的中点除去x、y所在子树的其他所有子树的和于是分类:...
阅读全文
摘要:题目:http://codeforces.com/contest/402/problem/E题意:给你一个矩阵a,判断是否存在k,使得a^k这个矩阵全部元素都大于0分析:把矩阵当作01矩阵,超过1的都当作1,那么a矩阵可表示一个有向图的走一次的连通性,则a^k表示有向图走K次的连通性。既然要求最后都...
阅读全文
摘要:题目:http://codeforces.com/problemset/problem/437/D题意:有n个点,m条边的无向图,保证所有点都能互通,n,m<=10^5每个点都有权值,每条边的权值定义为这条边连接两点的权值中的最小值。f(p,q)表示p到q的路径中边权的最小值,如果有多条路经,就取每...
阅读全文
摘要:题目:http://codeforces.com/contest/505/problem/D题目大意:就是给你一个n个点的图,然后你要在图中加入尽量少的有向边,满足所有要求(x,y),即从x可以走到y分析:对于输入的图中,可以发现每个连通块是独立的,中间不用连边就可以,于是考虑单个连通块。如果某个连...
阅读全文

浙公网安备 33010602011771号