自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

No Program No Life

落寞是岁月的痕迹。

  • 博客(12)
  • 收藏
  • 关注

原创 【BZOJ3289】Mato的文件管理(莫队算法+树状数组)

题目链接题目要求交换次数,其实就是逆序数。 求逆序数,用树状数组来求。 题目没说数据范围,则离散化处理一下考虑莫队算法 已知区间[l,r]\left[l,r\right]的交换次数SS1求[l,r+1]\left[l,r+1\right]的交换次数假设a[r+1]=xa[r+1] = x 这个和一般的逆序数求法一样,更新树状数组,求和。 update(Rank[x]

2017-04-27 16:38:31 254

原创 【BZOJ2038】小Z的袜子(hose)(莫队算法 + 分块)

转自参考博客 莫队算法可用于解决一类可离线且在得到区间[l,r][l,r]的答案后,能在O(1)O(1)或O(logn2)O(log_2^n)得到区间[l,r+1][l,r+1]或[l−1,r][l−1,r]的答案的问题问题: 给出n个数字,m次询问,每次询问在区间[li,ri][l_i,r_i] 之间任选两个数字相等的概率是多少。(n,q<=50000) 在区间[l

2017-04-26 16:31:56 331

原创 【zoj3962】Seven Segment Display(数位dp)

题目链接 题目大意: T组数据。 给你一个n,和8位的十六进制数num,每一位的十六进制数都有一个权值, 问[num,num+n-1]的每个数的权值和。省赛的时候,后面想到了数位dp,但是在想状态的时候,卡在了第二维的定义上。 (其实当时我很想睡觉。orz.还有就是我太菜。 (貌似权值和作为dp的状态很常见,以后注意一下。。这么水的题,我tm竟然现场没想到,菜的想

2017-04-24 20:25:14 748

原创 【HDU4991】Ordered Subsequence(离散化+dp+树状数组)

题目链接 题目大意: 给你n个数的序列,问长度为m的严格上升子序列有多少个。答案对123456789取模 (n≤10000,m≤100)(n\leq10000 , m\leq100)有一个暴力dp dp[i][j]dp[i][j] :=表示以第i个数结尾,上升子序列长度为j的个数 如果a[k] < a[i] dp[i][j]+=dp[k][j−1]dp[i][j]

2017-04-20 20:47:51 279

转载 【转】Ubuntu vi使用方向键出错

Ubuntu vi使用方向键出错

2017-04-20 20:17:15 244

转载 【转】ubuntu 16.04 启用root用户方法

ubuntu 16.04 启用root用户方法

2017-04-19 21:13:57 326

原创 Educational Codeforces Round 19-E. Array Queries(简单dp)

题目链接 题目大意: 给你n个数,ai∈[1,n]a_i\in[1,n] qq个查询,每次给你pp,kk。 有操作:p−>p+a[p]+kp -> p + a[p] + k 问经过多少次这样的操作,使得p>np > n一开始我是记忆化搜索, 然而提交运行与本地运行不一致???第二次碰到这个问题,完全不知道什么原因。 爆栈?怎么样例就爆。。提交运行: 本地运

2017-04-16 12:41:13 259

原创 队内训练赛三

PS:来点简单dp + 贪心A:51Nod - 1183 编辑距离状态转移int cost = (s1[i-1] == s2[j-1] ? 0 : 1); int delection = dp[i][j-1] + 1; int insertion = dp[i-1][j] + 1; int substitution = dp[i-1][j-1] + cost; dp[i][j

2017-04-06 22:34:43 257

原创 【ZOJ3777】Problem Arrangement(状压dp)

题目链接 题目大意: 有n道题,第i道题放在第j个有价值PijP_{ij} 有T组数据。 有n道题,给你一个价值m。 问有多少种方案使得总价值大于等于m。 输出方案数/总数(分数最简) 不存在则输出”No solution”.如果直接搜的话,时间复杂度是O(n!)的,n<=12显然会超时。 考虑dp,考虑状态压缩dp。 我一开始想的是dp[i][j] :=

2017-04-06 21:54:46 280

原创 【HOJ2662】Pieces Assignment(状压dp)

题目链接 PS:这是旧OJ的题,代码在新OJ里同样的题却T了,,或许加强数据了吧。然而我外加了个数组,却wa了。让我有点怀疑确定不是数据的问题?题目: 有一个n*m的棋盘(n、m≤80,n*m≤80)要在棋盘上放k(k≤20)个棋子,使得任意两个棋子不相邻(每个棋子最多和周围4个棋子相邻)。求合法的方案总数。经典的棋盘问题。 显然直接暴搜会T。 对于这类数据在10左右

2017-04-06 21:22:31 219

原创 【ZOJ3160】Couples(区间dp)

题目链接 题目大意: 有n个人,m对夫妻关系。 n个人排成一排,相邻的人如果是夫妻关系,则可以走出。夫妻两边的人成了相邻的人。 问最后最多可以走出多少人。比较裸的区间dp dp[i][j] := 表示在第i个人到第j个人之间最多走出的人数(包括i,j) 分两种情况讨论1如果a[i]与a[j]是匹配的并且满足dp[i+1][j-1] == j-i-1也就是说i与j之

2017-04-02 18:05:57 283

原创 队内训练赛二

A:ZOJ3158 Cut The Cake 题目大意: 给你一个m*n的矩阵,从上到下把它划分成两个子矩阵,两个子矩阵满足值的和的差不超过k,求最小的差值。 Note:不能在第一列的左边和最后一列的右边切。由于m,n值小,我们可以枚举切的位置直接搜索。在这之前我们要先预处理一下每一行的前缀和。方便搜索时记录最小值。#include <bits/stdc++.h> us

2017-04-02 17:54:50 301

空空如也

空空如也

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

TA关注的人

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