自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 问答 (1)
  • 收藏
  • 关注

原创 北京网赛I题 hiho1391 (树状数组、区间覆盖最大值问题)

题目链接:http://hihocoder.com/problemset/problem/1391 题意:A国和B国向对方分别投射N枚和M枚导弹(发射时间,飞行时间,伤害值),同时两国各自都有防御系统,导弹碰到防御系统会发生反弹。B国防御时间固定,求A国受到的最小伤害。 思路:对于从A国发射的导弹,判断到达B时(a+b)是否在B国防御区间[x , x + Tb]内,如果不在就不用管了,在的话计

2016-09-25 23:50:30 355

原创 HDU5883(青岛网赛1006)(欧拉路)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5883 思路: 欧拉路的性质:经过每条边一次且仅一次,奇度定点个数为0(欧拉回路)或2(欧拉路)。 度数为x的顶点,贡献为(x+1)/2%2,首先当然需要先判断是否存在欧拉路,再分是否为欧拉回路两种情况讨论。 #include #include #include using namespace

2016-09-22 23:30:32 507

原创 HDU5898、 HDU 2089(数位DP)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5898 题意:很明确,找出区间[l , r]中符合连续奇数为偶数,连续偶数为奇数的个数。 思路:dp[i][j][1]表示i位数j开头符合条件的数,dp[i][j][0]表示i位数j开头(之后)可能符合条件的数。 #include #include using namespace std; typ

2016-09-22 22:06:38 225

原创 区间DP合集

①HDU5115:http://acm.hdu.edu.cn/showproblem.php?pid=5115 题意:每只狼有自身攻击和额外攻击两个属性,杀手杀死它时受到它自身攻击(ai)和相邻两只(一只)狼的额外攻击(b(i-1) , b(i+1))之和,杀死之后相邻关系会对应调整, 求杀手杀死全部狼受到的最少伤害。 思路:一开始一直想贪心,结果还是放弃了..... 区间DP,dp[i]

2016-09-16 15:29:52 1142

原创 HDU5120(几何)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5120 题意:求两圆环相交面积,模板题。 #include #include #include using namespace std; const double eps = 1e-8; const double pi = acos(-1.0); int sgn(double x) { if

2016-09-15 23:00:22 319

原创 HDU 5876 (大连网赛1009)(BFS + set)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5876 题意:给定一个图(n个顶点m条边),求其补图最短路 思路:集合a表示当前还未寻找到的点,集合b表示本次bfs之后仍未寻找到的点 #include #include #include #include using namespace std; const int N = 2e5 + 5; s

2016-09-14 15:31:59 248

原创 codeforces 682D(DP)

题目链接:http://codeforces.com/contest/682/problem/D 思路:dp[i][j][l][0]表示a串前i和b串前j利用a[i] == b[j]所得到的最长子序列,     dp[i][j][l][1]表示a串前i和b串前j不利用a[i] == b[j]所得到的最长子序列, 所以,dp[i][j][l][0] = max(dp[i-1][j-1][l][

2016-09-12 23:29:46 331

原创 HDU5875 - 大连网赛1008(单调栈)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5875 思路:显然F(l , r) = Al % A(l+1) % ***Ar,大于当前数的直接跳过。 #include #include #include using namespace std; const int N = 1e5 + 10; int a[N] ,Next[N]; stack s

2016-09-11 20:25:59 301

原创 codeforces 666A (DP)

题目链接:http://codeforces.com/problemset/problem/666/A 思路:dp[i][0]表示第a[i-1]~a[i]组成的字符串是否可行,dp[i][1]表示第a[i-2]~a[i]组成的字符串是否可行,显然dp[len-2][0(1)]必定不可行。 转移方程: dp[i][0] = dp[i+3][1] || dp[i+2][0] && (tmp1

2016-09-09 23:24:07 356

原创 codeforces 706D (字典树)

题目链接:http://codeforces.com/problemset/problem/706/D 题意:q次操作,可以向多重集中增添,删除,询问异或最大值。 思路:转化为二进制用字典树存储,数字从高位开始,并全部固定位30位。 #include using namespace std; const int N=2e5 + 5; int now = 1 ,Trie[N<<5][2] ,n

2016-09-09 00:32:04 334

原创 codeforces 675C Money Transfers(贪心)

题目链接:http://codeforces.com/contest/675/problem/C 题意:有n个银行围成一圈,相邻的银行可以相互转账,问最少操作次数使得余额均为0。 思路:从1-n扫一遍,处理前缀和,如果有一段长为l的子序列和为0,则操作次数可以减少一次。结果即n-出现次数最多的前缀和的值。 #include using namespace std; typedef l

2016-09-05 19:59:28 460

原创 codeforces 675D Tree Construction (map)

题目链接:http://codeforces.com/contest/675/problem/D 题意:建立一棵二叉搜索树,比当前节点小的放左边,否则放右边。问编号2~n的节点的父节点数值是多少。 思路:如果用普通的建树方法来做,在遇到深度较深的树时会超时。map的lower_bound(t)返回第一个key大于等于t的位置it,所以t必定在(it.second,it.firs

2016-09-04 19:11:02 296

原创 codeforces 682C Alyona and the Tree(DFS)

题目链接:http://codeforces.com/problemset/problem/682/C 题意:如果点v在点u的子树上且dist(u,v)>a[v]则u和其整个子树都将被删去,求被删去的点数。 思路:1为根节点,从1开始DFS遍历,记录距离dis为到祖宗节点的最大距离。 #include using namespace std; typedef long long ll;

2016-09-03 16:37:39 409

原创 HDU1005(矩阵快速幂)

Description A number sequence is defined as follows: f(1) = 1, f(2) = 1, f(n) = (A * f(n - 1) + B * f(n - 2)) mod 7. Given A, B, and n, you are to calculate the value of f(n). Inp

2016-09-03 13:29:26 389

原创 codeforces 687A NP-Hard Problem(DFS二分图判定)

题目链接:http://codeforces.com/problemset/problem/687/A #include using namespace std; const int N=1e5+5; vector a[N]; int n,m,flag=1,num1=0,num2=0; int vis[N]; void dfs(int i,int mark) { if(vis[i

2016-09-03 13:08:46 388

原创 codeforces 446B(优先队列)

题目链接:http://codeforces.com/problemset/problem/446/B #include using namespace std; typedef long long ll; const int N=1e3+3; int matrix[N][N]; ll row[N],col[N]; ll dpr[N*N],dpc[N*N]; priority_queue q;

2016-09-03 11:52:17 490

原创 codeforces 711D Directed Roads(DFS)

题目链接:http://codeforces.com/problemset/problem/711/D 思路:由于每个点出度都为1,所以没有复杂的环中带环。DFS遍历,若为环则有2^k-2种,若为链则为2^k种。 #include using namespace std; typedef long long ll; const int N=2e5+10; const int mod=1e9

2016-09-03 11:23:37 376

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除