摘要:
1、有$n$个人,编号1到$n$。将其平均分到$m$个房间中,每个房间$K$个人。现在知道每个房间编号最小的人的编号。对于给出的人$x$。问其可能在的房间有多少种? 思路:先假设其在某个房间,然后判断可行否。将按照编号从大到小每个房间依次考虑。大于这个房间最小编号的人都可以在这里,多了就存起来。 2 阅读全文
摘要:
1、一堆石子有$n$个,Alice,Bob轮流拿,给定每个人每次可以拿的石子的数目的集合。谁先不能拿谁输。问谁能赢? 思路:对于先手来说,输赢的局面一定是从某个数字开始呈循环状态。所以找到这个循环开始的位置和循环的长度就能判断$n$是不是赢的局面。 2、给定一个长度为$m$的字符串$s$,按照如下的 阅读全文
摘要:
problem1 link 如果$a^{b}=c^{d}$,那么一定存在$t,x,y$使得$a=t^{x},c=t^{y}$。一旦$t,x,y$确定,那么可以直接计算出二元组$b,d$有多少。对于$t$,若$t>\sqrt{n}$,那么$x=y=1$。若$t\leq \sqrt{n}$那么$x,y$ 阅读全文
摘要:
problem1 link 倒着想。每次添加一个右括号再添加一个左括号,直到还原。那么每次的右括号的选择范围为当前左括号后面的右括号减去后面已经使用的右括号。 problem2 link 令$h(x)=\sum_{i=1}^{x}g(i)$,那么答案为$h(R)-h(L-1)$。对于$h(x)$: 阅读全文
摘要:
problem1 link 将$a_{0},a_{1},...,a_{n-1}$看做$a_{0}x^{0}+a_{1}x^{1}+...+a_{n-1}x^{n-1}$。那么第一种操作相当于乘以$1+x$模$x^{n}-1$,第二种操作相当于乘以$1+x^{n-1}$模$x^{n}-1$。所以操作的 阅读全文
摘要:
problem1 link 从1到$n*m$,依次枚举。每次将当前数字填回正确位置。比较该次操作前后是否变大。不变大则不做本次操作。 problem2 link 首先得到所有合法的字符串,然后分别枚举是不是$S$的子列。 problem3 link https://blog.csdn.net/qq_ 阅读全文
摘要:
problem1 link 按照$x$从小到大排序。然后从前向后处理,当前节点依次与前面已经处理的节点连边。 problem2 link 在$x$ 轴上有$n$个点A,$x$轴上方有$n$个点B,A集合中的每个点在B集合中的每个点找到一个匹配点,B集合中每个点只能与A中的一个点匹配,使得$n$条线段 阅读全文
摘要:
problem1 link 如果$n$满足,答案就是$n$。否则,依次枚举连续1的位置判断即可。 problem2 link 给出一个整数$X=\prod_{i=0}^{n-1}p_{i}^{a_{i}}$,其中$p_{i}$表示第i个素数,比如$p_{0}=2,p_{1}=3$。问有多少有序数列使 阅读全文
摘要:
problem1 link 给定两个长度都为$n$的数组$A,B$,给出一个操作序列将$A$变成$B$。每个操作可以是以下两种之一:(1)选择一个$i,0\leq i <n$且$A_{i} \neq 0$,令$t=A_{i}$,然后置$A_{i}=0$,最后令$i$位置后的连续$t$个位置分别加1。 阅读全文
摘要:
1、对于一棵树上的一个节点$u$,定义$f(u)$表示树上距离$u$最远的节点到$u$的距离。给出每个节点的$f$值,构造出这棵树。 思路:找到树的主干,然后不在主干上的节点一定可以连接到主干的某个节点上。 2、给定整数$n,K,v$,确定一个长度为$n$的序列$x$,满足$0\leq x_{i}< 阅读全文
摘要:
problem1 link 设有一个字母表$T$,对于一个单词$w$,若对于任意的$0\leq i< |w|-1$,满足$w_{i}$在$T$中的排名小于等于$w_{i+1}$在$T$中的排名,则称$s$在$T$中是合法的。给出一个仅包含小写字母的单词集合$S$,重新排列字母表$T$得到新的字母表$ 阅读全文
摘要:
1、给定一个迷宫,点号表示不可行,井号表示可行。现在可以改变其中的一些井号的位置。问最少改变多少个井号可以使得从左上角到右下角存在路径。 思路:设高为$n$,宽为$m$,若井号的个数$S$小于$n+m-1$则无解。否则最多改变$n+m-1$个井号即可。令$f[x][y][k]$表示现在到达位置$(x 阅读全文
摘要:
problem1 link 定义一个字符串s,定义函数$f(s)=\sum_{i=1}^{i<|s|}[s_{i-1}\neq s_{i}]$,给定字符串$p,q$,定义函数$g(p,q)=\sum_{c='a'}^{c<='z'}count(p,c)*count(q,c)$。其中 $count(s 阅读全文
摘要:
1 给定一个长度为n的整数数组A,重排列数组A使得下面计算出的X最大:(n不大于15,A中的大于等于0小于等于50) 思路:因为抑或只用到了X的后6位,所以令f[i][j]表示已经使用的数字集合为i,得到的当前的X的后6位为j的X的最大值。 2 给定一个只包含小写a和b的主串S和K个只包含数字0,1 阅读全文
摘要:
1 构造一个棋盘,长宽n,m不超过50,每个格子为障碍或者非障碍两种,使得从(0,0)到(n-1,m-1)的最短路为给定的值k。 思路:如果k小于等于98,那么一定存在没有障碍的棋盘满足要求。否则,最后的路径可以如下图所示(白色为障碍)。假设一开始向左弯曲到最左侧的次数为x,最后一次向左弯曲的长度为 阅读全文