摘要:
题目传送门 据说可以用贪心做?算了算了...我都不会贪...。 开始想的是用线段树,先建出一颗空树,然后输进区间操作后就维护最大值,显然开始我忽视了班车的容量以及可以有多组奶牛坐在一起的信息。 我们肯定想要有更多的区间被选中,根据线段覆盖问题的套路,我们要优先选结束位置最小的,能选就选,但是需要判断 阅读全文
摘要:
题目传送门 题目大意:给定一个$n*m$的棋盘,求放三个“炮”使它们不共行也不共列的方案数。($n,m$$<=100$) 这题主要是转移比较困难,因为情况比较多,所以需要冷静大胆细心地进行分情况讨论。 首先我们还是设计出状态:设$f[i][j][k]$表示前$i$行,放1枚棋子的有$j$列,放2枚棋 阅读全文
摘要:
题目传送门 $50pts$:容易设计出状态$f[i][j][l][r][st]$表示当前的这个人在($i$,$j$),小a和uim魔瓶中的含量分别为$l$,$r$,当$st=0$表明现在是小a在吃,当$st=1$表明现在是uim吃(方案数)。注意赋初值为$f[i][j][mapp[i][j]][0] 阅读全文
摘要:
题目传送门 $30pts$ 状态和转移都比较好想:设$f[i]$表示跳到$i$位置,踩到的最小石子数。转移方程也很明了,为$f[i]$=$min${$f[i-j]$),,这个位置有石子时答案再加1,$s<=j<=t$。 但是出了几次小坑 :首先答案不一定是$f[l]$,因为可能跳过去,但也算到达彼岸 阅读全文
摘要:
题目传送门 题意:给出一个01矩阵,找出一条对角线,使得对角线上的元素都为1,而对角线所在矩阵其他元素均为0,使得这样的对角线最长。 状态:$f[i][j]$表示以($i$,$j$)为对角线端点的最长长度。(很好想(吧))。 但是本题要求只能对角线上为1,其他地方为0,这样让我们的转移就很难搞。 看 阅读全文
摘要:
题目传送门 这题...看上去浓浓的背包气息...但是并不好设计状态啊emmm。 我们考虑可能成为状态的量:高度、血量、时间、物品。看数据范围也猜到应该大概是个二维dp了w。 正确的状态设计之一:设$f[i][j]$表示用到第$i$个物品,当前高度为$j$的最大血量。为什么用这个状态,因为写转移比较好 阅读全文
摘要:
题目传送门 题目大意:给你一棵树,求把其中k个点相互隔离(不连通)所需要的边权代价。 这题我开始是想要求出把k个点联通的最小代价的,但后来发现还是实现起来比较困难,题解里貌似也没有这种做法,于是就鸽了。但是大体的思考方向还是不直接去想把k个点隔离,而是把问题转化。 花费最小代价删边->花费最大代价建 阅读全文
摘要:
我是比赛地址 A:Phone Numbers $Description$:给你一串数字,问你能组成多少开头为8的11位电话号码。 $Sol$:统计8的数量,与$n$%11作比较。 1 #include<cstdio> 2 #include<algorithm> 3 #include<cstring> 阅读全文
摘要:
题目传送门 题目描述 对于任何正整数x,其约数的个数记作g(x)。例如g(1)=1、g(6)=4。 如果某个正整数x满足:g(x)>g(i) 0<i<x,则称x为反质数。例如,整数1,2,4,6等都是反质数。 现在给定一个数N,你能求出不超过N的最大的反质数么?(N<=2000000000) $So 阅读全文
摘要:
题目传送门 $Sol$ $50pts$:我们考虑$q==0$的情况,每次在所有的蚯蚓中找到一只长度最大的,这非常二叉堆。所以我们可以用一个优先队列,随便水一下就有50分。($NOIp$的分真这么好拿?) (理论得分60分,由于种种常数等的原因,实际会达到50分) 1 #include<cstdio> 阅读全文
摘要:
题目传送门 题目中的式子很符合扩展欧拉定理的样子。(如果你还不知扩展欧拉定理,戳)。对于那一堆糟心的2,我们只需要递归即可,递归边界是模数为1. 另外,本题中好像必须要用快速乘的样子...否则无法通过...。 $Code$ 1 #include<cstdio> 2 #include<algorith 阅读全文
摘要:
首先,我们珂以抽象出S函数的模型:把n拆成k个正整数,有多少种方案? 答案是C(n-1,k-1)。 然后发现我们要求的是一段连续的函数值,仔细思考,并根据组合数的性质,我们珂以发现实际上答案就是在让求2^(n-1)。 然鹅我们并不能高兴地过早。因为n的数量级竟然到了丧心病狂的1e100000.连高精 阅读全文
摘要:
题目传送门 题目大意:平面上有n个士兵,给出每个士兵的坐标,求出使这些士兵站好所需要的最少移动步数。站好要求:所有士兵y相等,x相邻。即达到 (x,y), (x+1, y), (x+2,y)……的状态。(每行不相邻) $Sol$ 我们很容易能想到,让所有士兵y相等就要把他们都移动到所有士兵y的中位数 阅读全文