摘要: http://codeforces.com/contest/351/problem/B 题意: 给出一个n的排列 第一个人任选两个相邻数交换位置 第二个人有一半的概率交换相邻的第一个数>第二个数的位置;有一半的概率交换相邻第一个数<第二个数的位置 然后两人轮换 问使序列升序,期望最少操作次数 序列升 阅读全文
posted @ 2017-12-19 21:54 TRTTG 阅读(325) 评论(0) 推荐(0) 编辑
摘要: http://codeforces.com/problemset/problem/351/A 题意: 2*n个数,选n个数上取整,n个数下取整 最小化 abs(取整之后数的和-原来数的和) 先使所有的数都下取整,累积更改的sum 那么选1个小数上取整,就会使sum-1 整数上下取整不会产生影响 所以 阅读全文
posted @ 2017-12-19 21:33 TRTTG 阅读(207) 评论(0) 推荐(0) 编辑
摘要: http://codeforces.com/problemset/problem/351/D 题意: n个数的一个序列,m个操作 给出操作区间[l,r], 首先可以删除下标为等差数列且数值相等的一些数 然后可以对区间剩余数重排 继续删除下标为等差数列且数值相等的一些数 继续对区间进行重排 直至区间内 阅读全文
posted @ 2017-12-19 20:31 TRTTG 阅读(275) 评论(0) 推荐(0) 编辑
摘要: http://www.lydsy.com/JudgeOnline/problem.php?id=2738 整体二分 二维树状数组累积 #include<cstdio> #include<iostream> #include<algorithm> using namespace std; #defin 阅读全文
posted @ 2017-12-19 14:29 TRTTG 阅读(275) 评论(0) 推荐(0) 编辑
摘要: http://www.lydsy.com/JudgeOnline/problem.php?id=2527 整体二分 区间加,单点查,树状数组维护差分序列 注意 累积可能会爆long long,所以一满足要求就break #include<cstdio> #include<iostream> #inc 阅读全文
posted @ 2017-12-19 13:51 TRTTG 阅读(222) 评论(0) 推荐(0) 编辑
摘要: http://www.lydsy.com/JudgeOnline/problem.php?id=1537 朴素的转移:dp[i][j]=max(dp[i][j-1],dp[i-1][j])+p[i][j] 树状数组优化 按x排序,离散化y 枚举,排序保证x,树状数组查询y #include<cstd 阅读全文
posted @ 2017-12-19 09:52 TRTTG 阅读(302) 评论(0) 推荐(0) 编辑
摘要: https://daniu.luogu.org/problemnew/show/P2964 dp[i][j] 表示桌面上还剩i枚硬币时,上一次取走了j个的最大得分 枚举这一次要拿k个,转移到dp[i-k][k] dp[i][j]=max(sum[i]-dp[i-k][k]) 因为 上一次取走j个和取 阅读全文
posted @ 2017-12-19 08:56 TRTTG 阅读(474) 评论(0) 推荐(0) 编辑
摘要: http://www.lydsy.com/JudgeOnline/problem.php?id=1207 dp[i] 表示打的最后一只鼹鼠是第i只,最多能打多少只鼹鼠 输出max(dp[i]) 错解: 再加一个转移:dp[i]=max(dp[i],dp[i-1]); 输出dp[m] 错因: dp[i 阅读全文
posted @ 2017-12-19 08:07 TRTTG 阅读(194) 评论(0) 推荐(0) 编辑