共 10 页: 上一页 1 2 3 4 5 6 下一页 末页
摘要:题目传送门 sol: 官方题解的随便简单推导我推不出来,推了很久倒是推出了另一种解法。 用 c[i][j] 表示 a[i] 的第 j 项,举个例子 c[3][0] = f[0] * f[3] = 0; c[4][1] = f[1] * f[3] = 2; 那么我们求 a[n] 也就是 c[n][0] 阅读全文
posted @ 2019-09-24 18:14 Angel&Demon 阅读 (46) 评论 (0) 编辑
摘要:题目传送门 稍加观察就会发现,4n - 1就是题目要的答案。至于为什么,看官方的题解。不过这个n非常的大,用正常快速幂解决不了。这道题我学到的就是解决幂非常大的情况。 官方题解传送门 sol1:之前好像做过一道类似的题目,想不出来,在群里看到网友发了一个名词叫十进制快速幂。然后根据这个名字自己意淫通 阅读全文
posted @ 2019-09-05 20:56 Angel&Demon 阅读 (30) 评论 (0) 编辑
摘要:大佬博客 ps:在牛客上做到这题不会,学会之后补了两道相关题。顺便记录一下。 牛客-DongDong数颜色 sol:dfs序+莫队,先把树上的点标上dfs序,因为子树的dfs序是连续的,所以子树可以表示为id[x]到id[x] + size[x] + 1,然后就是序列上莫队了(引用自官方题解) df 阅读全文
posted @ 2019-09-02 20:36 Angel&Demon 阅读 (15) 评论 (0) 编辑
摘要:题目传送门 sol1:老实做,预处理出所有2到1e5的素数,对所有数进行分解质因数,然后对比因子个数。感觉有点卡常,用了快读然后多次优化之后才过的,map也用上了。 素数筛,快速分解质因数 #include "bits/stdc++.h" using namespace std; typedef l 阅读全文
posted @ 2019-08-29 19:21 Angel&Demon 阅读 (35) 评论 (0) 编辑
摘要:题目传送门 sol1:拿到这题的时候刚上完课,讲的是指针。所以一下子就联想到了双向链表。链表可以解决卡片移动的问题,但是无法快速定位要移动的卡片,所以再开一个指针数组,结合数组下标访问的特性快速定位到要移动的卡片。把链表和数组的优势结合起来; 双向链表 #include "bits/stdc++.h 阅读全文
posted @ 2019-08-27 15:09 Angel&Demon 阅读 (60) 评论 (0) 编辑
摘要:题目传送门 ps:一般这种给一个数列求第n项,n还特别大的。要么矩阵快速幂,要么转化递推式。不过这题数据也特别多有100000组,所以就算矩阵快速幂可能也要超时,而且我还没推出来。转化递推式需要比较强的数学基础,我也转化不了。ε=(´ο`*)))唉,只能打表找规律。 打表代码 #include "b 阅读全文
posted @ 2019-08-18 11:34 Angel&Demon 阅读 (21) 评论 (0) 编辑
摘要:题目传送门 上个星期的假日团队赛,这题别人的代码看了四五天才明白,来补上代码 sol1:排列组合,当考虑某一位本来是1的,现在改成了0,那么在这一位后面位的就可以随意排列组合了。 排列组合 #include "bits/stdc++.h" using namespace std; typedef l 阅读全文
posted @ 2019-07-14 21:38 Angel&Demon 阅读 (27) 评论 (0) 编辑
摘要:题目传送门 sol:题目读完就知道是线段树,gcd满足结合律。操作2也好想到差分,但是不会修改后维护gcd。看了题解发现还是差分,这个差分用的妙啊; 线段树+差分 #include "bits/stdc++.h" using namespace std; const int MAXN = 1e5 + 阅读全文
posted @ 2019-07-13 21:01 Angel&Demon 阅读 (17) 评论 (0) 编辑
摘要:题目传送门 sol1:离线处理询问,对所有询问按高度排序,然后按高度顺序把每个点的坐标存入树状数组或线段树。 树状数组 #include "bits/stdc++.h" using namespace std; typedef pair<int, int> PII; const int MAXN = 阅读全文
posted @ 2019-07-03 21:03 Angel&Demon 阅读 (23) 评论 (0) 编辑
摘要:题目传送门 sol:状压和动规,把每一行的m个01压缩成一个int 状压dp #include "bits/stdc++.h" using namespace std; const int MAXN = 15; const int MOD = 1e8; int n, m; bool mp[MAXN] 阅读全文
posted @ 2019-06-30 14:28 Angel&Demon 阅读 (18) 评论 (0) 编辑
共 10 页: 上一页 1 2 3 4 5 6 下一页 末页