A、最长树链(loj6159)

分析:

对于每个质因数,取出所有是它倍数的点组成一个树,然后找最长路径

每个数操作次数是其质因数的个数

所以总的复杂度不超过O(nlogA)

B、二分图染色(loj6160)

分析:

先转换模型——一个n*n的棋盘上,对于每个格子,可以下黑子,可以下白子,可以不下子,要求同一行同一列颜色相同的棋子最多只有一个

考虑黑白两种颜色不太好考虑,我们去考虑单个颜色

设An表示n*n的棋盘上,放若干个棋子,同一行同一列最多只有一个棋子的方案数

那么有An=ΣC(n,i)*P(n,i) (枚举哪些行放棋子,然后这些行棋子的列做排列)

再考虑两种颜色,我们把两个棋盘拼起来,发现矛盾点就是不能有格子既有黑子又有白子

那么想到容斥:An*An- 至少有一个格子重叠 + 至少有两个格子重叠 - 至少有三个格子重叠……

对于重叠怎么计算呢?一个格子如果重叠了,那么这个格子所在行列都不能放其它棋子了,所以这行这列相当于删去了

所以至少有i个格子重叠可以表示成:C(n,i)*P(n,i)*A(n-i)*A(n-i)

看一下时间复杂度,题目要求在线性时间内完成,求An就成为了一个问题

其实An可以递推求得:An=2nA(n-1)-(n-1)*(n-1)*A(n-2) (留个坑,暂时不太弄懂啥意思?)

C、倒水(loj6161)

分析:

容易发现当大水缸里水的容量介于水杯水之间的时候,一定是无解的

只有在两边才有解

如果在左边,那么答案一定是最小的那个;如果在右边,那么可以二分

D、身体训练(loj6162)

分析:

期望式子推一推就出来了

E、合并回文子串(loj6163)

分析:

考虑dp

dp[i][j][k][l]表示a[i..j]和b[k..l]结合能否成为一个回文串

那么显然一共有4种转移

注意下初值就行了

F、数列互质(loj6164)

分析:

第一想法肯定就是莫队,也容易想到记录当前区间每个数出现次数以及“出现次数”的出现次数

那么时间复杂度就是O(nsqrt(n)+m*MAX*logA)

其中MAX是出现次数的最大值,logA是求gcd的时间

如果MAX是根号级别的就好了,但明显此题中MAX会很大,那么怎么办呢?

我们可以先做一个这样的处理:挑出所有在数组中出现次数>=sqrt(n)的数字,把这些数字用一个桶一刷,求个前缀和,然后遍历所有询问,算这个数字对每个询问的贡献

因为出现次数>=sqrt(n)的数字个数肯定不会超过sqrt(n)个,所以这个的时间复杂度就是O(sqrt(n)*m)

然后对于那些出现次数<sqrt(n)的数字进行莫队,那么MAX就是sqrt(n)了

所以整个复杂度就是O(nsqrt(n)+msqrt(n)+m*sqrt(n)*logA)

2017CodeM初赛A场的更多相关文章

  1. 2017CodeM初赛B场

    A.合并字符串价值(loj6174) 分析: 普通暴力:枚举两个分界线,那么ans=Σmin(Al(c)+Bl(c),Ar(c)+Br(c)),这样是O(n^2),会TLE 考虑枚举a的分界线,b的答 ...

  2. 2018 计算之道初赛第二场 阿里巴巴的手机代理商(困难)(反向可持久化Trie)

    阿里巴巴的手机代理商(困难) 阿里巴巴的手机代理商正在研究 infra 输入法的新功能.他们需要分析单词频率以改进用户输入法的体验.于是需要你在系统内核里面写一个 API. API 有如下功能: 添加 ...

  3. # 「银联初赛第一场」自学图论的码队弟弟(dfs找环+巧解n个二元一次方程)

    「银联初赛第一场」自学图论的码队弟弟(dfs找环+巧解n个二元一次方程) 题链 题意:n条边n个节点的连通图,边权为两个节点的权值之和,没有「自环」或「重边」,给出的图中有且只有一个包括奇数个结点的环 ...

  4. 动态规划-hdoj-4832-百度之星2014初赛第二场

    Chess Problem Description 小度和小良近期又迷上了下棋.棋盘一共同拥有N行M列,我们能够把左上角的格子定为(1,1),右下角的格子定为(N,M).在他们的规则中,"王 ...

  5. 计蒜之道 初赛第一场B 阿里天池的新任务(简单)

    阿里“天池”竞赛平台近日推出了一个新的挑战任务:对于给定的一串 DNA 碱基序列 tt,判断它在另一个根据规则生成的 DNA 碱基序列 ss 中出现了多少次. 首先,定义一个序列 ww: \displ ...

  6. 2019 计蒜之道 初赛 第二场 B. 百度AI小课堂-上升子序列(简单) ( 实现)

    题目背景 ​91029102 年 99 月 22 日,百度在 X 市 XX 中学举办的第一场 AI 知识小课堂大获好评!同学们对矩阵的掌握非常棒. 今天的 AI 知识小课堂的第二场开讲啦.本场 AI ...

  7. 2019 计蒜之道 初赛 第二场 A 百度AI小课堂-矩阵问题 ( 等差数列求和公式)

    题目背景 ​91029102 年 99 月 11 日,百度在 X 市 XX 中学举办了一场 AI 知识小课堂,本场 AI 知识小课堂老师教授了一些矩阵的相关知识,因为矩阵在 AI 人工智能中也有相当的 ...

  8. 2014百度之星初赛第二场hdu 4831 Scenic Popularity

    Scenic Popularity Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others ...

  9. 【AStar】初赛第一场

    1. All X1.1 基本思路k和c的范围都不大,因此可以考虑迭代找循环节,然后求余数,判定是否相等.这题还是挺简单的.1.2 代码 /* 5690 */ #include <iostream ...

随机推荐

  1. 【HEVC帧间预测论文】P1.3 Fast Inter-Frame Prediction Algorithm of HEVC Based on Graphic Information

    基于图形信息的HEVC帧间预测快速算法/Fast Inter-Frame Prediction Algorithm of HEVC Based on Graphic Information <H ...

  2. SqlServer 2008 创建测试数据

    包含要点: 数据库的循环 . insert select 句式   . 随机数(rand()函数).绝对值(abs()函数) ) ) DECLARE @randomvalue float SET @s ...

  3. codevs 3070 寻找somebody4(水题日常)

     时间限制: 1 s  空间限制: 32000 KB  题目等级 : 黄金 Gold   题目描述 Description 有一天.....sb不见了,有个人要去找他..他发现sb在一个杨辉三角里.. ...

  4. rmdir

    rmdir——删除空目录 remove empty directories 命令所在路径:bin/rmdir 示例: # rmdir /tmp/japan/longze 删除/tmp/japan/目录 ...

  5. oracle的Hint

    与优化器模式相关的Hint 1 ALl_ROWS   让优化器启用CBO /*+ all_rows */ 2  first_rows(n)     让优化器启用CBO 模式,而且得到目标sql的执行计 ...

  6. stay hungry stay foolish.

    I am honored to be with you today at your commencement from one of the finest universities in the wo ...

  7. 雷林鹏分享:Lua 数据类型

    Lua是动态类型语言,变量不要类型定义,只需要为变量赋值. 值可以存储在变量中,作为参数传递或结果返回. Lua中有8个基本类型分别为:nil.boolean.number.string.userda ...

  8. The MySQL server is running with the –secure-file-priv

    show variables like '%secure%'; 将文件导出路径更改为查询到的secure-file-priv路径下 select * from table where column = ...

  9. 服务器编程心得(四)—— 如何将socket设置为非阻塞模式

    1. windows平台上无论利用socket()函数还是WSASocket()函数创建的socket都是阻塞模式的: SOCKET WSAAPI socket( _In_ int af, _In_ ...

  10. 深搜DFS

    POJ-1321 在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别.要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定形状和大小的棋盘,摆放k个棋子的所有 ...