随笔分类 -  解题报告

上一页 1 2 3 4 5 6 7 ··· 9 下一页
摘要:SGU200.Cracking RSA------------------------★高斯消元SGU207.Robbers-------------------------------数论SGU218.Unstable Systems-------------------★图论、二分SGU220.... 阅读全文
posted @ 2015-03-06 18:53 keambar 阅读(257) 评论(0) 推荐(0)
摘要:题目链接 先用后缀数组给串排好序。dc3 O(n) 二分答案+贪心check 答案的长度len=(n+k-1)/k 如果起点为i长为len串大于当前枚举的答案,i的长度取len-1 从起点判断k个串的长度是否大于等于n check的时候最多枚举len个起点,每个位置需要枚举n/le... 阅读全文
posted @ 2015-02-16 00:15 keambar 阅读(245) 评论(0) 推荐(0)
摘要:题目链接Solution DFS+剪枝 对于一个走过点k,如果有必要再走一次,那么一定是走过k后在k点的最大弹药数增加了.否则一定没有必要再走. 记录经过每个点的最大弹药数,对dfs进行剪枝.#include #include #include #include #include using... 阅读全文
posted @ 2015-02-15 23:59 keambar 阅读(132) 评论(0) 推荐(0)
摘要:题目链接 要添最少的挡板使所有的'D'不存在到达网格外的路径. 以每个格子向四个方向中可以到达的格子连容量为1的边, 从源点向所有'D' 连容量为4的边,网格外的点向汇点连一条容量为4的边. 答案就是这个容量网络的最小割,即最大流./* 最大流SAP 邻接表 ... 阅读全文
posted @ 2015-02-15 23:49 keambar 阅读(175) 评论(0) 推荐(0)
摘要:A.Mr. Kitayuta, the Treasure Hunter 很显然的一个DP,30000的数据导致使用map+set会超时。题解给了一个非常实用的做法,由于每个点有不超过250种状态,并且这些状态都是以包含d连续的一段数字,那么可以以对d的偏移量作为状态。这算是很常见的一个优化了。#i... 阅读全文
posted @ 2015-01-24 14:22 keambar 阅读(217) 评论(0) 推荐(0)
摘要:The Maths Lecture题意:求存在后缀Si mod k =0,的n位数的数目。(n 0 的值。最后用9*10^(n-1)-∑f[n][i] 就可以得到 答案#include using namespace std;#define ll long longint n, k, MOD;ll ... 阅读全文
posted @ 2015-01-24 14:10 keambar 阅读(221) 评论(0) 推荐(0)
摘要:最开始看动态树不知道找了多少资料,总感觉不能完全理解。但其实理解了就是那么一回事。。。动态树在某种意思上来说跟树链剖分很相似,都是为了解决序列问题,树链剖分由于树的形态是不变的,所以可以通过预处理节点间的关系,将树转化成连续的区间,再加以其它的数据结构,便能以较快的速度处理序列的修改和查询。 ... 阅读全文
posted @ 2014-10-28 12:39 keambar 阅读(1038) 评论(2) 推荐(1)
摘要:题目链接Solutin: 将每个开关使用的情况当成未知数,如果开关i能影响到开关j,那么系数矩阵A[j][i]的系数为1。 每个开关增广矩阵的值是开关k的初状态异或开关k的目标状态,这个应该很容易想到。 方程都列好了,直接消元就好了。code/* 解异或方程组*/... 阅读全文
posted @ 2014-10-26 19:22 keambar 阅读(193) 评论(0) 推荐(0)
摘要:题意: H*W(W,H#include #include #include using namespace std;const int MAXN = 111;int n, m, dx, cnt;double A[MAXN][MAXN], ans[MAXN];inline void build (... 阅读全文
posted @ 2014-10-25 18:16 keambar 阅读(351) 评论(0) 推荐(0)
摘要:时间限制:0.25s空间限制:4M题意: 给出了m(#include using namespace std;const int MAXN = 211;int prim[MAXN];vector A[MAXN];int Gauss (int n, int m) { int col = 1, ... 阅读全文
posted @ 2014-10-24 23:00 keambar 阅读(229) 评论(0) 推荐(0)
摘要:题意: 给一个n*n(n#include #include #include #include using namespace std;string f[2][250][250], ans;int tem[250];int n, k, tol;string add (string a, str... 阅读全文
posted @ 2014-10-17 22:33 keambar 阅读(328) 评论(0) 推荐(0)
摘要:题意: 给一个n*n(n=j; 同样对白色部分如此处理,最后将对应的黑白方案乘起来累加就好了。 注意答案会超过INTcode#include #include using namespace std;long long f[2][100][100], ans;int tem... 阅读全文
posted @ 2014-10-17 18:25 keambar 阅读(753) 评论(0) 推荐(0)
摘要:时间限制:0.25s空间限制:4M题意: 有两个公司A、B,他们要展览物品,但是A公司的展柜要放B公司的物品,B公司的展柜要放A公司物品。最开始只有一个空柜台,从指定的一个公司开始,轮流进行操作,可选的操作有两个:①选一个自己公司的空展柜放上对方公司的物品 ②选一个自己公司的空展柜,在这个展柜左... 阅读全文
posted @ 2014-10-13 20:18 keambar 阅读(203) 评论(0) 推荐(0)
摘要:时间限制:0.25s空间限制:4M题意: 有n个人,每个人有两个能力值,只有一个人的两个能力都小于另一个的能力值,这两个人才能共存,求能同时共存的最大人数。Solution: 显然这是一个两个关键字的最长上升序列。 先按照第一种能力值为第一关键字从小到大,第二能力值为第二关键... 阅读全文
posted @ 2014-10-10 16:39 keambar 阅读(488) 评论(0) 推荐(0)
摘要:时间限制:0.25s空间限制:4M题意: 给定一个N*N的棋盘,一些格子被移除,在棋盘上放置一些1*2的骨牌,判定能否放满,并且输出任意方案。Solution: 首先考虑对棋盘的一个格子黑白染色(实际上不需要),得到一个类似国际象棋棋盘的东西,一个骨牌能放置在相邻的一对黑白格子上 ... 阅读全文
posted @ 2014-10-09 20:15 keambar 阅读(336) 评论(0) 推荐(0)
摘要:时间限制:0.5s空间限制:6M题意: 显然就是求一个无源汇有上下界的网络流的可行流的问题Solution:没什么好说的,直接判定可行流,输出就好了code/* 无汇源有上下界的网络流*/#include #include #define ms(a,b) memset(a,b,siz... 阅读全文
posted @ 2014-10-09 19:53 keambar 阅读(244) 评论(0) 推荐(0)
摘要:时间限制:0.5s空间限制:6M题意: 给出长n(n#include #include using namespace std;struct Mat { int mat[100][100];} mx;int pow[109];int n, m, mod, len;Mat operator ... 阅读全文
posted @ 2014-10-09 10:40 keambar 阅读(316) 评论(0) 推荐(0)
摘要:题目说了a的范围小于10^9次方,可实际却有超过的数据。。。真是醉了算出以f[i]结尾的所有可能GCD值,并统计;f[i]可以由f[i-1]得出./* 递推算出所有GCD值,map统计*/#include #include #include using namespace std;#de... 阅读全文
posted @ 2014-10-08 16:48 keambar 阅读(159) 评论(0) 推荐(0)
摘要:注意到每个区间生存下来的蚂蚁的长度等于区间的gcd于是可以先预处理出区间的gcd然后二分查找就好了预处理gcd我这里用的是倍增法总的时间复杂度O(NlogN)/* Cf 271F 倍增求区间GCD 对下标二分 时间复杂度O(NlogN)*/#inclu... 阅读全文
posted @ 2014-10-07 21:38 keambar 阅读(365) 评论(0) 推荐(0)
摘要:一眼看上去非常像最长不下降子序列。然后比赛的时候对每个答案长度为k的序列,维护最后一个数的最大值和最小值。当时不知道为什么认为从长度最长倒推至前面不会太长,于是心满意足地敲了个O(n^2)。结果T了。。。正确的做法应该用线段树维护,搜起来就是log(n),总的就是O(N*logN);用非递归的方... 阅读全文
posted @ 2014-10-07 16:07 keambar 阅读(368) 评论(0) 推荐(0)

上一页 1 2 3 4 5 6 7 ··· 9 下一页