08 2016 档案

摘要:题目链接 /* 单点更新,用RMQ维护最大值,add对c[i]修改,或加,或减。 求[l,r]的和,用sum(r)-sum(l-1).即可。 */ #include<cmath> #include<cstdio> #include<cstring> #include<algorithm> using 阅读全文
posted @ 2016-08-30 13:15 _Mickey 阅读(223) 评论(0) 推荐(0)
摘要:题目链接[http://poj.org/problem?id=3368] 给出一段序列,询问[L,R]区间内最大相同数的个数。用一个很巧妙地方法,转化成求区间内的最大值的问题。RMQ维护区间最大值。MAX处理:*/ for(int i = 1; i < n; i++) { if(a[i] == a[ 阅读全文
posted @ 2016-08-29 21:05 _Mickey 阅读(131) 评论(0) 推荐(0)
摘要:题目链接/*询问一段区间内的元素差值最大是多少,用RMQ维护一个最大值和一个最小值,相减即可。*/#include#include#includeusing namespace std;const int maxn=50000+5;int h;int dpmax[maxn][18]... 阅读全文
posted @ 2016-08-29 13:38 _Mickey 阅读(109) 评论(0) 推荐(0)
摘要:POJ 2182暴力/*题意:一个带有权值[1,n]的序列,给出每个数的前面比该数小的数的个数,当然比一个数前面比第一个数小的个数是0,省略不写,求真正的序列。(拗口)首先想到的是从前到后暴力枚举暴力枚举。数据量为8000,O(n^2)。*/#include#include#inc... 阅读全文
posted @ 2016-08-29 11:25 _Mickey 阅读(232) 评论(0) 推荐(0)
摘要:题目链接/*按从左到右,从下到上的顺序给出星星的坐标,计算出level为[0,n)的星星的个数。星星的level为该星星左下边(包括自己正下方的星星,但是不包括自己)星星的个数。BIT模板题。 £:把星星的下标转化成从1开始。 £:想到用BIT做。*/#include#... 阅读全文
posted @ 2016-08-28 15:30 _Mickey 阅读(128) 评论(0) 推荐(0)
摘要:题目链接/*判断一棵树:* 1、There is exactly one node, called the root, to which no directed edges point. * 2、Every node except the root has exactly one ... 阅读全文
posted @ 2016-08-28 10:02 _Mickey 阅读(126) 评论(0) 推荐(0)
摘要:题目链接 2469: C 小Y的难题(1) Time Limit: 1000 MS Memory Limit: 65536 KB Total Submit: 9 Accepted: 7 Page View: 128 Submit Status Discuss Descriptio... 阅读全文
posted @ 2016-08-14 21:06 _Mickey 阅读(238) 评论(0) 推荐(0)
摘要:题目链接/*题意是是传统的迷宫加上一个条件,墙壁在k的整倍数时刻会消失,那么求到达出口的最短时间。关键点在于某个点最多被走k次,标记vis[x][y][time%k]即可。*/#include#include#include#include#includeusing namespa... 阅读全文
posted @ 2016-08-14 10:33 _Mickey 阅读(222) 评论(0) 推荐(0)
摘要:题目链接NightmareTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 10069 Accepted Submi... 阅读全文
posted @ 2016-08-13 16:00 _Mickey 阅读(184) 评论(0) 推荐(0)
摘要:题目链接 Apple Tree Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 9692 Accepted: 3217DescriptionWshxzt ... 阅读全文
posted @ 2016-08-12 19:48 _Mickey 阅读(236) 评论(0) 推荐(0)
摘要:题目链接/*有一个数组a1,a2,a3……an。找到一个连续子段[l,r],使得al ^ al+1 ^……^ ar达到最大。一般思路:维护前缀异或+暴力;for(int i=1;i#include#include#includeusing namespace std;const i... 阅读全文
posted @ 2016-08-10 16:59 _Mickey 阅读(178) 评论(0) 推荐(0)
摘要:题目链接/*给定两个互质的数,a,b,求这两个数不能表示的数的最大值和个数。最大值=a*b-a-b;个数 =(a-1)*(b-1)/2;*/#include #include #include #include #include #include #include #includ... 阅读全文
posted @ 2016-08-10 14:43 _Mickey 阅读(117) 评论(0) 推荐(0)
摘要:题目链接/*简单trie树的应用,注意在初始化的时候要把cnt也初始化,不然,WA!下面的四分代码各有特点*///数组型,名字查询。#include#includeusing namespace std;const int maxn=1000000;struct tire{ ... 阅读全文
posted @ 2016-08-10 14:33 _Mickey 阅读(227) 评论(0) 推荐(0)
摘要:题目连接The number of divisors(约数) about Humble NumbersTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total ... 阅读全文
posted @ 2016-08-08 14:51 _Mickey 阅读(209) 评论(0) 推荐(0)
摘要:题目链接 F(N)Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 4579 Accepted Submission... 阅读全文
posted @ 2016-08-08 14:13 _Mickey 阅读(143) 评论(0) 推荐(0)
摘要:题目链接/*hang[maxn]标记每行是否可以被攻击,并计算前缀和lie [maxn]标记每列是否可以被攻击,并计算前缀和*/#include //#include#includeusing namespace std;const int maxn =100000+5;int... 阅读全文
posted @ 2016-08-07 20:28 _Mickey 阅读(98) 评论(0) 推荐(0)
摘要:题目链接/*有一个长度为n的只包含小写字母的字符串s,有m次操作,每次输入2个字符A , B表示将s中的全部字符A变成B,B变成A。char sky[30],顺序记录每个字母的映射,在sky[]里做改变,然后将原字符串通过sky[]得到答案。//丑*/#include#includ... 阅读全文
posted @ 2016-08-07 20:10 _Mickey 阅读(330) 评论(0) 推荐(0)
摘要:题目连接/* 最小点覆盖为:在一个二分图中,选取最少的点可以把所有的变覆盖, 点的最少个数就是最小点覆盖。 最小点覆盖=最大二分匹配。 克鲁斯卡尔算法。 关于本题: £:把从零开始,转化成从一开始。 £:起点不用加入E[],因为机器的起始状... 阅读全文
posted @ 2016-08-07 19:47 _Mickey 阅读(1124) 评论(0) 推荐(0)
摘要:题目连接/*£:离散数学。£:n!中2的个数>5的个数。£:2*5=10;*/#include#include#includeusing namespace std;typedef long long LL;int N;int main (){ int T;scanf("%... 阅读全文
posted @ 2016-08-07 11:21 _Mickey 阅读(121) 评论(0) 推荐(0)
摘要:题目连接/* 求所有小于N且与N不互质的数的和。 若:gcd(n,m)=1,那么gcd(n,n-m)=1; sum(n)=phi(n)*n/2; //sum(n)为小于n的所有与n互质的数的和 //phi(n)为小于n的所有与n互质的数的个数*... 阅读全文
posted @ 2016-08-06 16:10 _Mickey 阅读(767) 评论(0) 推荐(0)
摘要:题目连接先试一下题/?/ 最小点集覆盖=最大匹配/*根据i、j建图,跑一边最大匹配*/#include#includeusing namespace std;const int maxn=100+5;int maze[maxn][maxn];int f[maxn];bool vis... 阅读全文
posted @ 2016-08-04 15:16 _Mickey 阅读(102) 评论(0) 推荐(0)
摘要:来源 最小点集覆盖==最大匹配。首先,最小点集覆盖一定>=最大匹配,因为假设最大匹配为n,那么我们就得到了n条互不相邻的边,光覆盖这些边就要用到n个点。现在我们来思考为什么最小点击覆盖一定<=最大匹配。任何一种n个点的最小点集覆盖,一定可以转化成一个n的最大匹配。因为最小点集覆盖中... 阅读全文
posted @ 2016-08-04 14:41 _Mickey 阅读(243) 评论(0) 推荐(0)
摘要:题目链接#include #include #include #include #include #include #include #include typedef long long LL;using namespace std;const int inf=INT_MAX;c... 阅读全文
posted @ 2016-08-02 20:53 _Mickey 阅读(166) 评论(0) 推荐(0)