会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
chenjunjie1994
勤能补拙是良训,一分辛苦一分才。
博客园
首页
新随笔
订阅
管理
上一页
1
2
3
4
5
6
7
8
···
38
下一页
2015年10月16日
FOJ 10月赛题 FOJ2198~2204
摘要: A题。发现是递推可以解决这道题,a[n]=6*a[n-1]-a[n-2]。因为是求和,可以通过一个三维矩阵加速整个计算过程,主要是预处理出2^k时的矩阵,可以通过这道题 1 #include 2 #include 3 #include 4 #include 5 #define LL long...
阅读全文
posted @ 2015-10-16 20:11 chenjunjie1994
阅读(241)
评论(0)
推荐(0)
2015年10月5日
CF #323 DIV2 D题
摘要: 可以知道,当T较大时,对于LIS,肯定会有很长的一部分是重复的,而这重复的部分,只能是一个block中出现次数最多的数字组成一序列。所以,对于T》1000时,可以直接求出LIS,剩下T-=1000直接求出现次数最多的数字的个数即可。其实可以不用到1000,只需到n即可。#include #inclu...
阅读全文
posted @ 2015-10-05 23:39 chenjunjie1994
阅读(191)
评论(0)
推荐(0)
2015年10月4日
HDU 5467
摘要: 第一次写LCT,各种模板加入。。。以后都只遇到有新意的题目再更新了这道题就是LCT,但是,难在一个回退的操作。这时,可以通过改变执行顺序,先把要回退后再做的操作先执行了,再回退到之前的执行。这时,建立一棵操作树,使用DFS可以回退的特点,就能完成这一功能。#include #include #inc...
阅读全文
posted @ 2015-10-04 20:43 chenjunjie1994
阅读(280)
评论(0)
推荐(0)
2015年9月24日
CF #321 (Div. 2) E
摘要: 用线段树维护哈希,类似于进位制的一个哈希 a[i]*p^i+a[i-1]*p^i-1...然后,线段树存在某区间的哈希的值,对于更新,则只需提前计算出整段的哈希值即可。判断是否相等,由于相隔为d,只需计算(l+d,r),(l,r-d)两段哈希的值是否相等即可。为了防止一次哈希可能使不符合条件的值哈希...
阅读全文
posted @ 2015-09-24 22:00 chenjunjie1994
阅读(146)
评论(0)
推荐(0)
2015年9月23日
CF #321 (Div. 2) D
摘要: 不说了,爆内存好几次,后来醒起状态有重复。。。状压+TSP#include #include #include #include #include #define LL long longusing namespace std;//#pragma comment(linker, "/STACK:10...
阅读全文
posted @ 2015-09-23 11:01 chenjunjie1994
阅读(168)
评论(0)
推荐(0)
2015年9月17日
HDU 5435
摘要: 数位DP题,然而不会做。设dp[i][j]表示前i位异或和为j的时候的个数。先dp出所有的可能组合使得异或和为j的个数,然后按位进行枚举。对于dp[i][j],其实不止是前i位,对于后i位的情况同样适用,当在枚举s[i]位时k,如果k#include #include #include using ...
阅读全文
posted @ 2015-09-17 16:05 chenjunjie1994
阅读(197)
评论(0)
推荐(0)
HDU 5434
摘要: 其实是一道状态DP题。都是行与行之间的转移,可以知道,当某j列中有一个象,如果存在情况i-1行j-1列有象而i,j-1位置无象则不可放,或者i-1,j+1有而i,j+1无同样不可放。使用快速状态转移#include #include #include #include #include #inclu...
阅读全文
posted @ 2015-09-17 16:00 chenjunjie1994
阅读(222)
评论(0)
推荐(0)
CF #319 div 2 E
摘要: 在一个边长为10^6正方形中,可以把它x轴分段,分成1000段。奇数的时候由底往上扫描,偶数的时候由上往下扫描。估计一下这个最长的长度,首先,我们知道有10^6个点,则y邮方向最多移动10^3*10^6。对于x轴方向,如果都在一个段内,则最多移动 10^3*10^6,如果均不在一个段内,最多就200...
阅读全文
posted @ 2015-09-17 15:56 chenjunjie1994
阅读(162)
评论(0)
推荐(0)
2015年9月12日
HDU 5433
摘要: 每次BC都好心酸。。。BFS+queue。。状态可以设为p_val[x][y][k],加上斗志的值。#include #include #include #include #include #include using namespace std;char str[55];int h[55][55]...
阅读全文
posted @ 2015-09-12 22:14 chenjunjie1994
阅读(180)
评论(0)
推荐(0)
CF #319 div 2 D
摘要: 这道题算不算脑洞题。。可以发现,当一个排列中有循环节时长度为1或2时可能有解。当为1时,只需把全部点都连到这个题即可,当为2时,就要求所有循环节长度均为偶数,这很容易理解,因为如果存在为奇数,它们之间连线之后就可以形成环或者不存在的情况了。把其他循环节上的点分别连到这两个点上即可。为什么是2呢?因为...
阅读全文
posted @ 2015-09-12 17:04 chenjunjie1994
阅读(215)
评论(0)
推荐(0)
2015年9月10日
HDU 5293
摘要: 树上DP题。其实有点类似于01的问题。方程很容易想到。首先,因为一条链的节点其实都是在树上的,所以很容易想到应该先求一个LCA。然后,当某节点不是链的LCA时,它的转移就是:dp[i]=sum[i],其中,sum[i]是i的子节点的dp[i]的和。如果它是某个点的LCA时,那么它的转移就是dp[i]...
阅读全文
posted @ 2015-09-10 11:19 chenjunjie1994
阅读(271)
评论(0)
推荐(0)
2015年9月9日
HDU 5289
摘要: 发现枚举+二分更好!我做得复杂了,竟然两个都是从左边开始枚举。找最大最小用ST算法吧。#include #include #include #include #include #define LL long longusing namespace std;const int MAX=100050;i...
阅读全文
posted @ 2015-09-09 23:33 chenjunjie1994
阅读(568)
评论(0)
推荐(0)
HDU 5288
摘要: //枚举因子,查找和i最近的左右是i因子的点即可。#include #include #include #include #define LL long longusing namespace std;const int MAX=100010;const LL mod=1e9+7;int l_nex...
阅读全文
posted @ 2015-09-09 23:30 chenjunjie1994
阅读(216)
评论(0)
推荐(0)
2015年9月8日
HDU 5431
摘要: 由于最长不超过30个字符(由K的范围确定),于是,枚举所有的字符串,二分中使用二分就可以确定第K小了。#include #include #include #include using namespace std;char str[20010];int bits[32];int save[32][2...
阅读全文
posted @ 2015-09-08 10:52 chenjunjie1994
阅读(152)
评论(0)
推荐(0)
HDU 5393
摘要: [background]保研的事终于告一段落了,之后去北京折腾了一段时间,本以为会在那里实习一个月,谁知道刚去ICT,心中就各种反感,可能是因为LP的态度吧,否则我可能会留在那里读研也说不定。花了两千多,最终灰溜溜的回来了,信心就大受打击。幸好的是,家人给予理解。八月的那一段时间,内心实在十分苦闷,...
阅读全文
posted @ 2015-09-08 10:49 chenjunjie1994
阅读(289)
评论(0)
推荐(0)
上一页
1
2
3
4
5
6
7
8
···
38
下一页