自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

缺氧

2015/12/03 Go the extra mile.

  • 博客(79)
  • 资源 (4)
  • 收藏
  • 关注

原创 UVA 11624-Fire!-BFS-

http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=28833题意:就是找起点S到走出n*m格子外的最短时间开始有一些Fire点,每单位时间会四处延伸先预处理好每个格子最先着火的时间。在bfs找最短路的基础上加多一个判断是否着火即可复杂度(NM)#include #include #includ

2016-03-31 18:33:55 244

原创 UVA-10047 The Monocycle- bfs

http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=19491题意:给一个图,求s到T的最短时间每一步可以转左转右,或者向前走一步并且每走一步身体颜色变化一次,开始是绿色,朝北,共有5种颜色(循环变化)要求到达T要是同一种颜色,和一般bfs求最短路一样,只是多了两个因素直接作为一个状态,那么

2016-03-31 17:05:34 275

原创 UVALive 4255-Guess-拓扑排序

http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=21664题意:对于一个序列a1,a2...an,我们可以计算出一个符号矩阵S,其中Sij为ai+..+aj的正负号或0,代表下标i累加到j的元素和为正负或0。给出符号矩阵,要求输出一个对应的序列。对于Sij,我们可以看成前缀和SUM[J]-SUM[I-1]

2016-03-31 16:10:44 347

原创 IndiaHacks 2016 - Online Edition (Div. 1 + Div. 2)-C - Bear and Up-Down-暴力枚举

http://codeforces.com/contest/653/problem/C题意:给n,给n个数。要求一个合法序列满足: 偶数项>奇数项,奇数项给一个序列,要求交换仅一对数,使得原序列变成合法序列问你有多少种方案扫一遍 看有多少个位置不符合要求,也就是  偶数项《奇数项,奇数项》偶数项的,我们把后一项坐标记录起来。如果这样的坐标如果超过

2016-03-31 08:29:07 454

原创 IndiaHacks 2016 - Online Edition (Div. 1 + Div. 2)-B - Bear and Compressing-暴力DP

http://codeforces.com/contest/653/problem/B给你n,qq是置换规则,每一个规则把2个字母置换成1个要求你构造出一个长度为n的字符串,使得满足:每次取最前两个字母进行置换,最终整个字符串能变成 一个字母a数据太小。暴力dp一下就好。。。初始化,dp[1][i]=1之前先把两个字母和一个字母映射起来,

2016-03-31 08:22:30 371

原创 IndiaHacks 2016 - Online Edition (Div. 1 + Div. 2)-A - Bear and Three Balls-水题

http://codeforces.com/contest/653/problem/A直接判断有没连在一起的3个数就好了#include #include #include #include #include #include #include #include #include #include using namespace std;const doub

2016-03-31 08:13:24 345

原创 cf#273-D. Red-Green Towers-dp

http://codeforces.com/problemset/problem/478/D题意:给你r个红砖,g个绿砖让你建成 一个塔,每一层需要的砖块数为 1 2 3 4 ...n每一层必须同色假设最高能搞成的塔为h,求建造高度为h的塔的方案数h=sqrt(2.0*(r+g));while(h*(h+1)>2*(r+g)) h--; 得到高度h

2016-03-30 21:09:04 362

原创 TYVJ-P1214 硬币问题-完全背包

http://www.tyvj.cn/p/1214题意 给n种硬币,数量无限,求凑成S的方案中 硬币数最少和最多的方案,分别输出数量dp很好写,,,初始化注意一下就好了。。#include #include #include #include #include #include #include #include #include #inc

2016-03-30 18:01:54 459

原创 UVALive 2965-Jurassic Remains (Mitm)中途相遇法+bitmask

http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=34853题目大意:给出N个字符串,字符串里面的字符全是大写字母,要求你在N个字符串中选出M个字符串,使这M个字符串的每个字符出现的个数为偶数,求M的最大值把字符串压缩到一个int的26位。要求一个字符串子集中 所有字符出现个数为偶数,也就是所

2016-03-30 16:51:02 746

原创 cf#276-B - Maximum Value - (数学+暴力)/(二分)

http://codeforces.com/contest/484/problem/B给n个数,求n个数里 ai%(aj)的最大值 ,要求ai>=aj一开始没什么好的想法枚举aj,每次去找  最接近 k*aj的存在的数(k>=2)怎么找的话有两种方法一是直接把数组a排序,每次二分找最接近k*aj的数复杂度应该是nlgnlgn如果预处理一个vis数组v

2016-03-29 14:37:44 467

原创 CodeForces 435C Cardiogram-模拟

http://codeforces.com/problemset/problem/435/C按他给你的点,在坐标纸画线可以发现对点(x,y),如果右边的点是在上方,则变成(x+1,y+1)直到相遇,并且向上时 (x,y)往上画线是会落在(x,y)这个格子的,而向下的过程中点(x,y)画‘\’占用的格子是(x-1,y)注意不要多余的空格,最后一行和最后一列是不需要用到的

2016-03-29 13:15:10 742

原创 cf#209- B - Permutation-构造

http://codeforces.com/problemset/problem/359/B给一个1-2n的序列,让你构造出n: .的序列给你n,k     先按2n到1排列,然后每次只需要交换前n-k对的位置即可#include #include #include #include #include #include #includ

2016-03-29 13:10:59 367

原创 VK Cup 2016 - Round 1 (Div. 2 Edition)-B - Bear and Displayed Friends-STL(维护前k大)

http://codeforces.com/contest/658/problem/B题意 给n,k,q;就是让你维护一个kmax的集合q次操作操作1 把 节点v加入kmax集合,操作2 查询v是否在集合里直接用multiset。就好了。。#include #include #include #include #include #inc

2016-03-29 13:07:11 391

原创 VK Cup 2016 - Round 1 (Div. 2 Edition)-C - Bear and Forgotten Tree 3-构造

http://codeforces.com/contest/658/problem/C卧槽。。真是大脑缺氧了。。。这么简单的一个构造题。。。给你n,d,h构造出一个n个节点 直径为d高为h的树(根为1)无法构造输出-1;直接特判【2*h】输出-1还有一个情况就是【h==d的时候,直径是一条链......如果节点n>=d+1的话,那么多出来的节点如果接在根1就会导致直径增

2016-03-29 13:01:28 362

原创 cf#316-codeforces570D - Tree Requests -dfs序+分类再二分+树dp+异或位运算+bitmask(位压缩)

http://codeforces.com/contest/570/problem/D题意:给一棵树n个节点,每个节点有一个字母信息。节点1的深度为1,其他节点的深度 为 到1的距离m次查询,每次查询 给出(v,h)  求以v为根节点的子树的所有节点中  深度在第 h 层 的所有节点 能否构成一个回文串(以任意顺序排列)首先既然是任意顺序构成回文串的话,只要是该字母出现

2016-03-27 23:39:05 566

原创 codeforces#225-C - Propagating tree-dfs序(奇偶)+线段树

http://codeforces.com/problemset/problem/384/E题意:给一棵树,根为1,根高度为1,每次操作 两种 1:x,val,  把x节点加val,把其所有儿子-val,把儿子的儿子都+val,反复如此2:查询某个节点的值对每次操作,显然就是把该节点的所有子节点中,奇偶性与X相同的+val,不同的则-val,如此反复我们先跑

2016-03-26 22:38:14 405

原创 Codeforces#103-C. Anagram Search-乱搞水题

http://codeforces.com/problemset/problem/144/C定义:  S的“乱序串” ,就是 一个串P经过任意排列和 ,能变成串S(完全匹配)给一个串S,(字母和?) 问号表示任意字母给一个P(只有字母)问你S串的所有子串里,有多少个子串可以是P的乱序串。直接for一遍 on,预处理 P的所有字母 到vis[2

2016-03-26 22:17:32 559

原创 Codeforces#245- B. Working out-DP

http://codeforces.com/problemset/problem/429/B给个n*m矩阵,每个格子有值一个人从【1,1】走到 【n,m】每次只能向右或向下走。另一个人从【n,1】走到【1,m】每次只能向右或向上走。要求两条路线只能有一个交点【这点巨坑。。开始一直读不出这个意思】求一个sum,就是两条路径的经过所有格子的 值加起来(排除掉他们

2016-03-26 22:08:38 317

原创 codeforces#242B-Megacity-二分

http://codeforces.com/problemset/problem/424/B给n,s给n个城市,以及里面人口坐标中心0,0 有s人,现在扩宽以0,0为中心,半径为r 圈一个圈,使得圈内人口大于等于1e6,求最小的r直接二分R,每次判断够不够1e6#include #include #include #include #include

2016-03-26 21:59:51 590

原创 cf#ecr10-C. Foe Pairs- two pointers

http://codeforces.com/contest/652/problem/C给n个数的数组,  n=3e5给m个敌对pair,让你选区间,一个合法区间不能包括任何一对敌对pair首先我们把a[i]和i映射起来先。。初始化一个end【】数组为0,记录的是第i个数为右端点的最大的敌对左端点(如果end[i]=0表示不存在一个敌对左端点)然后遍历

2016-03-26 12:00:20 452

原创 cf#ECR10-D. Nested Segments-树状数组+二分

http://codeforces.com/contest/652/problem/D题意,给n个区间(端点保证不重复)输出每个区间包含了多少个区间先存起所有区间的左右端点,并依次对应编号然后把左右端点 分别从小到大排序并开一个树状数组,每个点对应着Yi,初始化值全为1从小到大遍历左端点,对于X1,找到其原始编号id,然后再找出对应的Y然后在

2016-03-26 00:09:34 408

原创 cf#89-C - Fancy Number - 暴力-贪心-模拟

http://codeforces.com/contest/118/problem/C题意:给n长度的串,要求通过一系列替换操作,至少要有k个数字相同。替换的代价为原数字到新数字的绝对值那么我们直接枚举替换为0-9的方案,每次算出每个数字替换为i 的代价,然后按代价从小到大排序,代价相同的 按  【改变了该数字为i 字典序会变大还是变小排序】(主要这里写好了就OK了)

2016-03-25 09:47:20 638

原创 cf#VK Cup 2015 - Qualification Round 2-C - Name Quest-贪心

http://codeforces.com/contest/523/problem/C题意:给串S,给串T定义K为   从一个串K里删除0个或多个字母后得到1个S,问把T划分为2个K,问能有多少方案直接从1开始找到T从第一次匹配完S的s[n]对应坐标。st再从n往前找到最后一个匹配完S的s[1]对应坐标。ed如果st>ed 不能划分否则 答案为ed-

2016-03-24 10:51:30 473

原创 cf#VK Cup 2015 - Qualification Round 2-D - Statistics of Recompressing Videos-优先队列模拟

http://codeforces.com/contest/523/problem/Dk个服务器,处理n个任务,每个任务有开始时间和过程时间。直接用一个优先队列维护处理器状态即可。。nlogn#include #include #include #include #include #include #include #include #include #i

2016-03-24 10:51:17 527

原创 CF#243 C. Magic Formulas- xor异或运算 / 数学

http://codeforces.com/contest/424/problem/C题意:给n个数,p1p2p3...pn求qi=pi^(i%1)^(i%2)^.....^(i%n)Q=q1^q2^......^qn由于异或的原因,支持交换 操作数。因此我们把qi分离出qi和 剩下部分,全部pi直接异或在一起 对于所有qi的剩余部分 ,显然 (i%1)^(i%

2016-03-24 01:20:04 824

原创 cf#225-C - Milking cows-贪心

http://codeforces.com/contest/384/problem/C这题题意就是 1表示牛向右看,0表示牛向左看,怎么杀牛,能让牛看到自己同伴被杀受到的惊吓最小。贪心策略是,先杀所有向左看的牛,从最左边的0牛(看左)开始杀,这样就能保证每次杀的时候,该头牛只减少向右看的牛的牛奶,而不对其余向左看的有影响。。最后剩下所有向右看的牛也是按顺序杀就不会再损失牛奶了。。。

2016-03-23 09:24:56 337

原创 hdu 4937 Lucky Number 进制转换-枚举/数学

题意:我们将3,4,5,6认为是幸运数字。给定一个十进制数n。现在可以讲起任意转换成其他进制,但转换后的数必须是由3,4,5,6构成的,而这个进制称为幸运进制。问有多少个幸运进制。若有无数个,则输出-1。例如19在5进制下是34,所以5是幸运进制。//我们将n这个数在x进制下的表示记为:n=a0+a1*x+a2*x^2+a3*x^3+..... 我们发现当n表示为x进制

2016-03-21 20:59:26 361

原创 hdu 4864 Task 贪心+二分/set

题意:有n台机器,m个任务,每台机器有xi,yi,每个任务也有xj,yj,当一个任务可以被处理的条件是,xj<=xi 且 yj贪心的话,如果是遍历任务的话,那么我们希望尽可能做时间和level更高的任务,我们可以先按时间排,时间相同按level,递增排,机器也是按这个排。然后从最大价值的任务开始遍历,对于每一个任务,找到第一个大于等于任务【i】.x的机器,然后显然就是在包括

2016-03-21 16:27:35 392

原创 CodeForces 452C - Magic Trick-概率

题意:有m个deck,每个deck上有n张牌。现在混在一起,要求你在n*m张中选出n张,拿来做魔术。观众从n张中选一张,问你作为魔术师 拿出与他选的值一样的那张的概率首先n张牌,有1/n的机会选到观众选的同一张。那么就有(n-1)/n的机会选的是非同一张,那么就相当于要选一张 面值 相同的牌,    现在是先从n*m张中选出n张,再从n张中选出1张与观众那张等值的牌,其实等价于

2016-03-21 09:11:10 526

原创 CodeForces 320B Ping-Pong (Easy Version)-DFS

n太小。每次非查询操作,on建边,查询操作dfs(n)输出#include #include #include #include #include #include #include #include #include #include using namespace std;const double pi=acos(-1.0);double eps=0.

2016-03-20 18:50:38 979

原创 CodeForces 272C-Dima and Staircase-线段树区间更新-RMQ

按题意直接 每次输出 max(1,x),然后把(1,x)set为 max(1,x)+y。。。或者贪心也行。#include #include #include #include #include #include #include #include //#include #include using namespace std;__int64 max(__int64 a,

2016-03-20 18:46:13 362

原创 CodeForces 416B-A - Art Union-DP

http://codeforces.com/problemset/problem/416/B模仿生产流水线。。。一直贪心。。。dp一下就好了#include #include #include #include #include #include #include #include #include #include using namespace std;

2016-03-20 18:33:18 314

原创 cf#161-D-Cycle in Graph- dfs

题意:给一个无向图,存在环,保证每个node至少与k个点相连,让你找出一个 长度》k+1的环。。。把1作为根,dfs搜,当遇到一个没访问过的节点V则递归进入,否则判断该节点是否是直接父亲,如果不是的话,说明存在一个环,X到V,因为每次往下走的都是没访问过的节点,所以X到V这条链上的点都是在同一分支,因此换的长度就是dp[v]-dp[x]+1,如果大于k+1直接输出答案,否则继续搜索、

2016-03-20 18:30:25 360

原创 HDU 4939-E - Stupid Tower Defense-DP

题意:题意:给出一条长为n个单位长度的直线,每通过一个单位长度需要t秒。有3种塔,红塔可以在当前格子每秒造成x点伤害,绿塔可以在之后的格子每秒造成y点伤害,蓝塔可以使通过单位长度的时间增加z秒。问如何安排3种塔的顺序使得造成的伤害最大,输出最大伤害值显然 红塔放在最后面是最优的,因此可以枚举i,红塔的位置就是i+1到n那么只是看前面怎么选蓝和绿d

2016-03-20 11:22:00 570

原创 HDU 4861-A - Couple doubi-数学规律/打表观察

且不说数学论证,,这题只要好好模拟打表打几个小数据就一定能发现规律k个数一定是 0 0 0 0 0 X  的循环节,X出现在p-1的倍数的位置,其余地方都是0因此 只要循环周期为奇数,则先手赢,否则平手、明明随便打表就看出答案的题。。。结果没好好打小数据。。打错表了。。。连这么简单的题都没过。。。。#include #include #include

2016-03-20 10:20:45 318

原创 hdu 4941 Magical Forest 离散化 +模拟 /(map应用)

非常不开心。。这么简单的题都实现错了。。。。唉。。题意: 给你n行,m列,的矩形,k个水果每个水果属性,x,y,v,表示在x行y列t次查询每次 q=1把 a,b行互换q=2把a,b列互换q=3查询 mp[a][b]是否存在果子,存在则输出对应的v,否则输出0显然对于行列互换操作,只需要用一个数组记录 row[i]最终指向的行,每次交换只需要把row[i],row

2016-03-19 23:13:26 351

原创 求第k大连续区间和/第k大子序列和 - 二分+树状数组+前缀和(或主席树+堆)

给你n,再给你n个数,最后给一个k求出这个序列的第k大连续区间和;N(1ai(1K(1思路:预处理前缀和。并将其离散化(去重)。二分答案,然后每次判断中,遍历前缀和Bi,然后查找有多少个jX,也就是有多少个子序列的和是大于X的,即使求有多少个Bj小于【Bi-X】,这部分查询我们可以用树状数组实现,方法类似于树状数组求逆序对。 查询方法简要说一下,

2016-03-19 17:32:10 3692

原创 poj-1548-Robots- 贪心+模拟 / 最小路径覆盖

给你一个地图,给出部分格子告诉你是有钻石的。然后你要每次从x=1,y=1处派出一个机器人,然后每次只能向右或向下走,问最少多少个机器人可以把所有钻石拿掉。直接贪心,每次走最外面(就是尽量走最靠近右上角的点)的一条路即可也即:在(x,y)的时候,看  第i行的 y+1到24还有没钻石,如果有就 往右走,如果没就往下走,当x或y==25就结束。这样暴力模拟就n^2复杂度

2016-03-18 19:44:03 424

原创 POJ-2226-Muddy Fields-二分图-最小点覆盖

http://poj.org/problem?id=2226题意就是 给你一个r*c的矩阵。里面有一些*和.,要求用最少的操作去掉所有的*每次的操作就是去掉一行连续的*,或者一列(长度任意)。。但是这个题有个不一样的地方是, 每次操作不能碰到 点.  因此就是说不能粗暴的把整行去掉之前的POJ3041就可以以点为边,对于点(x,y),只要对行x或着列y进行删除操作

2016-03-18 12:06:49 471

原创 cf#8VC Venture Cup 2016 - Final Round (Div. 2 Edition)-C - XOR Equation-数学/位运算

http://codeforces.com/contest/635/problem/C给出 sum,xor让你求出有多少对 有序正整数对(a,b) 满足 a+b=sum, s^b=xor有序就是(a,b)(b,a)算两次得利用到一个公式 :a+b=a^b+(a&b)*2即:a+b可分解为a^b[各位相加后该位的结果(不考虑进位)] 加上 (a&b)*2[进位的效果]

2016-03-18 01:12:02 492

java/swing编写的第一个扫雷程序.jar

个人感觉界面做得还不错的 实现功能点: 主题皮肤更换, OK 三种游戏模式, OK 计时, OK 扫雷英雄榜, OK 保存游戏进度 , OK 载入游戏进度, OK 标记雷区功能, OK 求救(help,提示雷的位置), OK 左右键同时按下九宫格提示/除雷功能, OK 联机对战 ,OK 分辨率自适应,OK

2015-12-24

java/swing编写的第一个扫雷程序

个人感觉界面做得还不错的 实现功能点: 主题皮肤更换, OK 三种游戏模式, OK 计时, OK 扫雷英雄榜, OK 保存游戏进度 , OK 载入游戏进度, OK 标记雷区功能, OK 求救(help,提示雷的位置), OK 左右键同时按下九宫格提示/除雷功能, OK 联机对战 ,OK 分辨率自适应,OK

2015-12-24

AC自动机模板

AC自动机模板,直接套,有注释N的范围,适合初学者学习

2015-12-08

空空如也

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

TA关注的人

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