自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

zxy160的博客

感觉有意思就好

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

原创 板子

大数java大数a+b:http://blog.csdn.net/zxy160/article/details/79583252 java大数a-b:http://blog.csdn.net/zxy160/article/details/79584460 java大数a*b:http://blog.csdn.net/zxy160/article/details/79584050 java...

2018-01-24 15:46:15 572

原创 leetcode刷题DP

word-break遍历每个区间能不能分,a[i]表示[0,i)之间能不能分class Solution {public: bool wordBreak(string s, unordered_set<string> &dict) { int len=s.size(); vector<bool>a(len+1,false...

2020-03-01 15:36:54 204 1

原创 leetcode刷题日记

1.树-Minimum Depth of Binary Tree求二叉树最小深度注意是最小深度,不是最大class Solution {public: int run(TreeNode *root) { if(root==NULL) return 0; int ans=1; queue<TreeNode*&...

2020-02-27 17:01:58 177

原创 差分 2017-2018 ACM-ICPC Asia East Continent League Final (ECL-Final 2017)(J题)

http://codeforces.com/gym/101775/problem/J差分就是将一串数分别于前一个数做差,例如:一个序列1 2 5 4 7 3,差分后得到1 1 3 -1 3 -4 -3这里注意得到的差分序列第一个数和原来的第一个数一样(相当于第一个数减0)差分序列最后比原序列多一个数(相当于0减最后一个数)性质:1、差分序列求前缀和可得原序列2、将原序列区间[L,R]...

2018-11-15 19:23:43 353 2

原创 牛客小白月赛7 B自杀游戏(sg博弈)

sg博弈结论为,下个状态sg的补集的最小值。题目#include&lt;bits/stdc++.h&gt;using namespace std;const int maxn=1e5+9;bool book[15];int sg[maxn];int main(){ int t,a,b; scanf("%d%d%d",&amp;t,&amp;a,&amp;b); ...

2018-09-18 10:46:57 274

原创 抽签原理

箱子中a个黑球,b个白球,求第k次摸出黑球的概率。 (1)对于有放回的。每次都是在a+b个球中任取一个,因此第k次取球有a+b种方法,而第k次取出黑球的方法有a种,所以 概率为p=a/(a+b)。 (2)对于无放回的。把a+b个球摸出来,一共有(a+b)!种方式,而第k次是黑球的方式为 a*(a+b-1)!种方法,所以概率为 p=a*(a+b-1)!/(a+b)!=a/(a+b)...

2018-08-20 17:53:13 9487

原创 hdu6375 度度熊学队列

直接用list#include&amp;lt;bits/stdc++.h&amp;gt;using namespace std;const int maxn=150005;void read(int &amp;amp;x){ char ch = getchar();x = 0; for (; ch &amp;lt; '0' || ch &amp;gt; '9'; ch = getchar()); f...

2018-08-11 17:52:06 237

转载 基环树

一、基环树首先什么是树就不解释了,如果这都不知道,应该也接触不到基环树吧在了解了树的基础上来解释基环树——树加一条边使之成环(也就是说,在严格意义上来说,基环树并不是树,就像老婆饼没有老婆一样,基环树是个图) 二、基环内向树首先它是一个有向图,它构成类似基环树的结构,有一个特点是每个点都有且只有一个出度,并且环外的节点方向指向环内 三、基环外向树与基环内向树相反,它有且...

2018-08-09 14:45:45 655

原创 hdu6358 Glad You Came

题意:首先一个长度为n的a数组,全为0。一个长度为3m的b数组,通过题目给的随机生成,然后根据题目给出的公式,区间【l,r】和一个数v对于区间内的数a【i】=max(a【i】,v),计算出a[i]的每个值,然后求与i的异或和。 正解是用反向RMQ,更新每段区间,然后压到每一项上。#include &lt;cstdio&gt;#include &lt;cstring&gt;#include...

2018-08-07 16:37:36 239

原创 hdu 6341 Problem J. Let Sudoku Rotate

直接暴力搜+可行性剪枝。具体看代码,注意:顺时针旋转#include&lt;bits/stdc++.h&gt;using namespace std;int vis[20];char s[20][20];int a[20][20],b[20][20];int ans;void ro(int x,int y){ for(int i=x;i&lt;x+4;i++) ...

2018-08-02 15:10:32 160

原创 二分图-多重匹配

poj2289 二分图匹配一个点只能匹配一个,但是多重匹配能匹配多个,只要改变限制条件就可以了,先判断这个点匹配的数量有没有达到它自身或二分mid的限制,如果达到限制可以从匹配的点中选取能转移的匹配点。//感觉kuangbin板子上的代码太费时了,还是自己写的好#include&lt;stdio.h&gt;#include&lt;sstream&gt;#include&lt;str...

2018-07-16 18:24:53 1176

原创 P3384 【模板】树链剖分

P3384 【模板】树链剖分 树链剖分是把一棵树划分成几条链,这几条链又能组成数组,然后把数组建成线段树,继而相当于在树树上操作。#include&lt;algorithm&gt;#include&lt;iostream&gt;#include&lt;cstdlib&gt;#include&lt;cstring&gt;#include&lt;cstdio&gt;using na...

2018-07-14 16:16:25 202

原创 主席树-可持久化线段树

首先要学会普通的线段树,然后理解权值线段树,而主席树就是多个权值线段树(我自己的理解),但是这多个权值线段树之间有公共部分,节约了空间。它一开始是一个空树,后来逐个添数,记录添加的这个数在那个范围内,并+1,显然它每次只更新了一条链,其他不需要变,这样就有了多个版本的线段树。如果求[l,r]范围内第k大个数,那么只需要在T[l]-T[r+1]的线段树中寻找第K个数的位置即可。 poj2104...

2018-07-13 16:48:55 202

原创 java记事本

import java.awt.*; //这里主要是使用基础图形和 eventqueueimport java.awt.event.*;import java.util.*;import java.io.*; //文件流。(这里使用字符流,以及异常)import javax.swing.*; //非基础类 绘图和交互等。 swing 比a...

2018-06-27 17:37:38 313

原创 01分数规划(三种题型)

学习链接 最普通的01分数规划 poj2976#include&amp;lt;stdio.h&amp;gt;#include&amp;lt;math.h&amp;gt;#include&amp;lt;string.h&amp;gt;#include&amp;lt;iostream&amp;gt;#include&amp;lt;algorithm&amp;gt;using namespace std;type

2018-05-18 16:29:45 941

原创 表达式求值简单类型总结

nyoj35 表达式求值/*21.000+2/4=((1+2)*5+1)/4=*/#include&amp;amp;amp;amp;lt;stdio.h&amp;amp;amp;amp;gt;#include&amp;amp;amp;amp;lt;string.h&amp;amp;amp;amp;gt;#include&amp;amp;amp;amp;lt;stdlib.h&amp;amp;amp;amp;gt;#include&a

2018-05-04 21:24:53 321

原创 nyoj 188-Arbitrage

nyoj 188-Arbitrage 题意读错了,以为是检查给出的是否符合条件。真的题意是确定套利行为是否可行! 每个点做为起点跑一次spfa看是否变大了即可。#include&lt;stdio.h&gt;#include&lt;math.h&gt;#include&lt;string.h&gt;#include&lt;string&gt;#include&lt;queue&g...

2018-05-03 14:38:34 173

原创 ZOJ 3336

ZOJ 3336 题意:中文题,不再陈述。 思路。仔细思考,首先你会发现将末尾的数字-1加到前一位即可。比如21,答案应该为30.然后再思考会发现99这种情况。答案应该为189.顺势 就会想到9900这种情况。答案为10089.所以你会发现-1还不够。我们应该从尾开始找找到一个不为0的数,-1.再往前找,找到一个不为9的数字 +1.设找到的这个不为9的数字的位置为pos,将pos到尾的数字...

2018-05-01 15:43:38 177

原创 51Nod 1521

51Nod 1521 中文题,题意不说了。 思路:先看初始区间能装多少战舰,如果能就把初始范围0~(n+1)放入set中,然后依次把判断的点加入set,每加入一个,用lower_bound找出左右区间,ans-老区间能装多少个+新的两个区间能装多少个。set用lower_bound要这样用s.lower_bound(b[i]),用lower_bound(s.begin(),s.end(),b[...

2018-05-01 15:18:54 179

原创 POJ 1002

POJ 1002 C:题意 给你一个n。然后后n行。每行一个字符串。字母+数字的个数是7个。-不考虑。如果是字母的话就通过表映射。A-B-C映射 为2…….然后求这n行相同数字的个数。如果相同数字个数&gt;=2就输出出来,并输出个数。 思路;很简单,直接将每一行的7个数字转换为10进制的数,存到数组里。sort一遍。找出相同的个数即可。按照输出的格式再输出即可 ,大水题,没时间做了#...

2018-05-01 14:47:21 189

原创 Codeforces Round #477 (rated, Div. 1, based on VK Cup 2018 Round 3) A. Stairs and Elevators

题目 题意:给出n层楼,每层m个房间,楼梯和电梯的分布这样的(1,x),(2,x)…,(n,x),1&lt;=x&lt;=m,楼梯c1,电梯c2,电梯的速度为v。给出起始点和终点,问最快的速度。 解法:其实很简单,算出走楼梯和电梯的四种情况,然后取最小值即可,记得同一楼层的情况。 状态不好,写了一堆bug#include&lt;bits/stdc++.h&gt;using namesp...

2018-04-30 16:48:59 246

原创 ZOJ 3939。规律题

规律题。400年一个大闰年一循环。次数2058一循环。打表得出规律。直接模拟求出即可#include &lt;bits/stdc++.h&gt;using namespace std;typedef long long ll;#define inf 0x3f3f3f3f3f3f3f3fconst int maxn=1e5+9;#define mem(aa,bb) memset(aa,...

2018-04-28 16:55:16 175

原创 2018年湘潭大学程序设计竞赛 G又见斐波那契

又见斐波那契 构造矩阵进行矩阵快速幂。 主要是(i+1^k那里花点心思,把(i+1)拆开后相乘即可。 比如3^3=3*3*3=(2+1)(2+1)(2+1)=2^3+3*2^2+3*2^2+1 所以构造的矩阵为1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,3,3,1,0,0,0,1,2,1,0,0,0,0,1,1,0,0,0,0,0,1#includ...

2018-04-27 20:29:40 194

原创 hdu5701

hdu5701 题目:给你一个乱序的序列,问它现在所在区间是否为中位数,如果是,那么这样的区间有几个。 思路:位置i有一个数是a[i],现在只向左遍历这个区间如果如果比它打和比它小的一样多,那么ans++,那么只向右遍历也是这样。如果向两边遍历,想遍历完一边,再遍历另一边,如果另的一边比a[i]小的和那边比a[i]大的一样多,那么就会ans++。#include&lt;stdio.h&...

2018-04-27 17:25:17 184

原创 E Byteland, Berland and Disputed Cities

E Byteland, Berland and Disputed Cities 题意:给你1,2,3,三种点,使其排列在x轴上,去掉点1后使其2,3点完全联通,去掉点2后使其1,3点完全联通,问最短需要多长。 思路:1和2两个点不用连,连了也得去掉。 那么如果只有一个3点,我们把3点看成1点,按顺序连一遍即可,同样2点也是如此。 如果有两个3点,那么第一个3点的最左面相同点挨着连即可,...

2018-04-25 19:54:51 210

原创 D. Destruction of a Tree

D. Destruction of a Tree 题意:给你n个点,n-1条边连通整个图,每次删除度数为偶数的点,问是否能找出答案。 解法:偶数个点肯定不行。奇数个点,对于每个父亲儿子来说, 如果儿子的子树的大小为奇数, 那么肯定先删父亲, 反之先删儿子, 建立关系图, 跑一遍拓扑序就好啦。#include &lt;bits/stdc++.h&gt;using namespace s...

2018-04-25 16:06:11 258

原创 ZOJ 3780 Paint the Grid Again

ZOJ 3780 Paint the Grid Again 题意:输入一个t,代表t组样例。下一行跟一个n.给你一个n*n的图。问由一个空白图能不能变成这个图。每行我可以涂成X,但是每行只能涂一次 每列我可以涂成O,每列也只能涂一次。后涂的会覆盖以前涂的。比如样例1.先把第2行全涂成X,再把第一列全涂成O,再把第一行全涂成X。 思路:我们可以倒着思考。最后涂的那一次,一定是一整行X或一整...

2018-04-24 20:23:18 123

原创 尼姆博弈

Nim游戏 重点结论:对于一个Nim游戏的局面(a1,a2,…,an),它是P-position(先手必败)当且仅当a1^a2^…^an=0,其中^表示位异或(xor)运算。 SG函数 从一个有向无环图的走法逐渐推向NIM游戏的局面。 所谓的SG值就把大游戏分成几个小游戏所求出的值,然后经过异或运算得出胜负。 学习链接:https://blog.csdn.net/strangedbly/...

2018-04-23 19:23:31 455

原创 zzuli 1728: 社交网络(组合数打表)

zzuli 1728: 社交网络 题意:中文题,不多说。 解法:先组合数打表,打一个c[30][30]的表记录一下。假设一个点是女的,那么与她相连的点为kk个,那么kk中选出k~kk个为男的那么就是C(kk,k~kk),分母为2的kk次方,又因为多枚举了一个男女的情况,所以除2.#include&lt;stdio.h&gt;#include&lt;string.h&gt;#incl...

2018-04-21 21:01:02 205

原创 LightOJ - 1002(迪杰斯特拉求最大之的最小值)

LightOJ - 1002 题意:求s点到t点所有路径中最大值的最小值(简单化了)。 解法:迪杰斯特拉求相同路径上的最大值,不同路径上的最小值。#include&lt;stdio.h&gt;#include&lt;string.h&gt;#include&lt;queue&gt;#include&lt;map&gt;#include&lt;iostream&gt;#incl...

2018-04-21 18:49:00 220

原创 CodeForces 546D

CodeForces 546D 求n的质因子数量。 平常的做法就是这样的int solve(int n){ int ans=0; for(int i=2;i&lt;=n;i++) { if(n%i==0) { while(n%i==0) { ans+...

2018-04-21 08:30:15 122

原创 CodeForces 551C

CodeForces 551C 题意有一个教授要走一条路,但是一条路上堆了很多箱子。这个教授有很多学生,问学生把这条路上的箱子全部搬完需要多长时间。 每个学生在每秒都可以在做出两个选择,搬掉一个箱子,向前走一步。 比如第二个样例。3 2 1 0 2;两个学生都走到第一堆花费1秒。第一个学生搬掉第一堆的一个箱子,第二个学生向前走一步,花费一秒。 第2个学生向...

2018-04-20 16:44:36 222

原创 fzu Problem 2150 Fire Game

Problem 2150 Fire Game 题意:找两个起火点,把草烧完,求最短时间,如果烧不完,输出-1 思路:先找到草堆数目,然后暴力枚举任意两个点。水题,还以为会超时呢#include&lt;stdio.h&gt;#include&lt;string.h&gt;#include&lt;queue&gt;#include&lt;iostream&gt;#include&l...

2018-04-20 10:29:24 112

原创 hdu4268 Alice and Bob(贪心+set)

hdu4268 题意:A和B两个人各有n个矩形板子,当A的板子的长&gt;=B的板子的长&amp;&amp;A的板子的宽&gt;=B的板子的宽时,则是覆盖,求最大能覆盖的数量。 题解:两个序列的长都从小到大排序,然后从B中找出满足小于等于A的第i板子的长,先满足一个条件,塞到multiset里,再找出满足第一个条件后set中最大的宽,ans++。遍历完所有的A板子即可。 set:排序+去重 ...

2018-04-18 21:11:10 155

原创 hdu4638 Group(莫对算法)

hdu4638 题意:第一行输入一个t。t组数据. 第二行n,m。n代表n个数字.m代表询问m次。 第三行输入n个数字. 接下来m行。每行l,r。代表需要查询的区间。 查询的是l-r区间内有几段连续的数字。 eg:1-5 有数字3 1 2 5 4.排一下序:1 2 3 4 5.连续。所以输出1。 2-4 有数字1 2 5 4.排一下序:1 2 5,1 2连续,5连续。所以输出2...

2018-04-18 16:25:30 348

原创 HDU 1251 统计难题

HDU 1251 中文题意,不再说了。 字典树裸题,比赛时用的指针实现的导致MLE||RE很难受。赛后套了一下数组实现的直接A了。思想大家也理解了。具体 说一下数组如何实现。//ZQW写法#include &lt;iostream&gt;#include &lt;string.h&gt;#include &lt;stdio.h&gt;#include &lt;algorith...

2018-04-17 20:28:48 170

原创 POJ 2421 Constructing Roads

POJ 2421 读题错误,认为是给出q次询问,每次算出u到v的路径上的最小路。 真正题意是,给出q对点,表示这q对已经联通,然后再求联通其他点所需的路径长度。 最小生成树prime模板,只要把联通的点变成0即可。#include&lt;stdio.h&gt;#include&lt;string.h&gt;#include&lt;iostream&gt;using namesp...

2018-04-17 20:21:01 159

转载 威佐夫博奕

转自:https://blog.csdn.net/y990041769/article/details/21694007 威佐夫博弈是博弈中的另一个经典模型。问题:首先有两堆石子,博弈双方每次可以取一堆石子中的任意个,不能不取,或者取两堆石子中的相同个。先取完者赢。分析:首先我们根据条件来分析博弈中的奇异局势第一个(0 , 0),先手输,当游戏某一方面对( 0 , 0)时,他没有办法...

2018-04-16 20:59:00 290

原创 巴什博弈

个人理解: 假设现在有n=m+1个石子,有两个人a和b,a先拿,最多拿m个,谁先取完谁胜。两个人都很聪明,问谁会取胜。很明显无论a拿多少(假如为k),那么b肯定会把剩下的都拿走n-k&lt;=m。b胜! 假设现在n!=m+1,那么结果又会如何?那么我们可以把n=(m+1)r+s,a拿走s个,然后b拿走k个,a再拿走(m+1)-k个,那么剩n=(m+1)(r-1)个,保持这样,a一定取胜。所以如...

2018-04-16 19:29:16 118

原创 Problem C. GSS and Bubble Sort

Problem C. GSS and Bubble Sort Input file: standard input Output file: standard output Time limit: 1 seconds Memory limit: 512 mebibytes Do you remember the problem “Time Limit Exceeded” last yea...

2018-04-16 16:48:04 176

空空如也

空空如也

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

TA关注的人

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