06 2017 档案
摘要:大致题意: 给出一张表,n行m列,每一行的列用逗号分隔。判断这个表是否有冗余元素。如果一张表中有两行两列对应的的元素相同,那么这个表就有冗余元素。 分析: 先枚举要排序的列,然后枚举行,如果相邻两行相等,再枚举列,判断元素是否相等。
阅读全文
摘要:大致题意: 给你9堆扑克牌,每堆牌有4张,大小从A~K。每次从9堆牌牌顶抽走两张大小相同的牌,且抽走每一对相同的牌的概率都相等。问可以全部抽完的概率。 分析: 这是一道概率dp题。剩余的牌数作为状态,有9堆,意味着要一个9维数组来存d[i1][i2][i3][i4][i5][i6][i7][i8][
阅读全文
摘要:大致题意: 给出n个建筑的二维坐标,每个建筑名称为一个字母,不同坐标的建筑可以有同一名称,并保证这些坐标都是在y轴上半轴。给出一串建筑名称的字符串,在X轴上找出一个或多个区间,使Nick在这个区间上从左往右观看,看到的建筑顺序与给出的字符串相符合。 分析: 建筑物的数量最多100,那么我们可以先求出
阅读全文
摘要:题意: 给定一串数,求一个区间,使得该区间的所有数之和乘以该区间内最小的数的乘积最大。 分析: 每一个元素都有可能为该区间最小值,所以我们往该元素的左右方向扩展,越大越好。但是扩展的时候如果逐个遍历肯定会超时,那么这个地方需要一个优化。如果往左遇到的是比自己要大的元素,可以直接跳到这个大的元素对应的
阅读全文
摘要:分析: 这一题给出的遍历的点的序列,不是树的中序遍历,前序遍历,只要遇到一个节点就打印一个节点。关键点就在,这个序列的首字母和尾字母一定要相同,因为最终都会回到根节点,那么每一个子树也一样。 状态: d[i][j]表示i至j的状态数 d[i][j]= d[i][j]=(d[i][j]+dp(i,k)
阅读全文
摘要:题意: 给出正整数n和k,计算j(n, k)=k mod 1 + k mod 2 + k mod 3 + … + k mod n的值,其中k mod i表示k除以i的余数。例如j(5, 3)=3 mod 1 + 3 mod 2 + 3 mod 3 + 3 mod 4 + 3 mod 5=0+1+0+
阅读全文
摘要:1503: 点到圆弧的距离 分析: 先判断点和圆心的连线是否在圆弧范围内,如果在,最短距离即到圆心的距离减去半径的绝对值;反之,为到端点的最短距离。 具体看注释
阅读全文