自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

zzu::myorange

白色的蜻蜓,在空中忘记了飞行

  • 博客(52)
  • 资源 (14)
  • 收藏
  • 关注

原创 hdu5273 Abandoned country 最小生成树 概率 Kruskal算法 前向星存图

有图                                                                           Abandoned country题目大意:有n(n因为n很大所以用kruskal求最小生成树求出最小花费,然后dfs搜索回溯的办法找到所有情况每条路用过的次数并求出总花费,用总花费除以所有可能发生的次数(n*(n-1)/2)就是我们要求

2017-07-31 17:34:13 420

原创 Suhana and Equation | codechef 几何级数的模和

f(N) = 00 + 11 + 22 + 33 + 44 + ... + NN    求模m的和。N很大,1e9级别,m不是很大,也就几十万。限时1s.先利用取模的性质:(i + m * k) % m = i % m。对f(N)进行等价划分:i ^ i + (i + m) ^ (i +m) + (i +2*m) ^ (i + 2*m) + ... = i ^ i + i ^

2017-07-31 16:03:12 472

原创 树形动态规划 hdu1502 poj2342 Anniversary party

Anniversary party一向惧怕DP动态规划和图论,而树形DP又把DP和树图结合起来了。1、什么是树型动态规划 顾名思义,树型动态规划就是在“树”的数据结构上的动态规划,平时作的动态规划都是线性的或者是建立在图上的,线性的动态规划有二种方向既向前和向后,相应的线性的动态规划有二种方法既顺推与逆推,而树型动态规划是建立在树上的,所以也相应的有二个方向:     1、叶->根

2017-07-29 23:41:14 460

原创 最大公约数 与 异或 UVA GCD XOR 数论小技巧记录

题目:UVA 12716约定a >= b, (a, b) = c. 那么 c a ^ b = c    ===     c a 不能等于 b, 反正法:若a= b, a ^ b = 0. 而 (a, b) = a != 0。不会满足题意的。得知 c 就下来就是暴力枚举因数c, 和 a.时间复杂度O(nlogn)。一次离线处理即可。#include #include

2017-07-28 09:25:37 941

原创 再看 唯一分解定理 UVA Choose and divide

先用线性素数筛筛选出某一范围的素数,然后可以把若干数分解成素数相乘的多项式(大白话:小学五年级的质因子分解)。可以解决组合数问题,避免中间数据太大无法表示的问题。 以 UVA Choose and divide 为例#include #include #include #include using namespace std;const int N = 10000;bo

2017-07-27 21:14:13 331

原创 UVA 12196 Disgruntled Judge 拓展欧几里德算法

看我手写分析题目大意:有3个整数 x[1], a, b 满足递推式x[i]=(a*x[i-1]+b)mod 10001。由这个递推式计算出了长度为2T的数列,现在要求输入x[1],x[3],......x[2T-1], 输出x[2],x[4]......x[2T]. T//拓展欧几里德用法详见紫书314页#define _CRT_SECURE_NO_WARNINGS#inclu

2017-07-27 19:58:41 347

原创 CF The Meeting Place Cannot Be Changed 对时间进行二分

看CF Round403 讨论区里有说对距离进行二分的,二分假设可能的位置,计算所需时间,缩小时间。开始是这样想的,不过没能实现(now)。后来,我总算学会了如何去……算,对时间进行二分,缩小时间至所有人刚好可以到达。对于每一个假设的时间,计算出所有人可达到区间的交集,若有交集,说明时间给多了:反之,少了。不多不少时就是所需的最少时间。B. The Meeting

2017-07-26 09:29:10 580

原创 hihocoder offer收割19th 数组重排3 八进制位操作 状态压缩

hihocoder offer收割19th 数组重排3 hiho1539哈哈,利用宽度优先搜索,求初态移到有序终态的最少步数。由于最多八个数字,8是个很好的数字,刚好可以用3个bit位存下不大于8的数字,8个不大于的数字可以用24比特位存下(一个int类型就可以存下一个数组的状态了~)。所有状态不可能超过数组长度的阶乘,因为有的状态达不到。比如21,不可能转化为12。(43210)D 这个

2017-07-24 09:02:00 611

转载 C/C++ 算术移位&&逻辑移位 int && long long间的转化

上面是我说的下面转自:皓皓松最近下了个牛客APP,在上面做了几道题。在做题的过程中呢。我发现了一道比较有意思的题目老规矩,直接上代码[cpp] view plain copy print?int main()  {      int a = 1;      int b = 32;      printf("%d %d\n",

2017-07-23 17:06:58 2179

原创 福大OJ2273 如何判断点是否在三角形内

刚在想如何给点按逆时针排序,然后用向量积判断是否有负值。还可以这样用面积判断不过很难用精确判断两个浮点数是否相等。 昨日因为机缘巧合,做了一道阿里的实习生编程题。题目很有趣,其中涉及到了如何判断一个点是否在一个三角形内。其中,判断这个问题最简单的方法是面积法。如果一个点在三角形内,其与三角形的三个点构成的三个子三角形的面积等于大三角形的

2017-07-22 15:20:11 417

原创 高斯消元 矩阵求秩

以 杭电zhu and 772002 为例,看高斯消元如何使用矩阵的秩等于矩阵线性无关的列的数量,自由度 = 矩阵列数 - 矩阵的秩。摘自贴吧。线性代数,忘了。好像是通过行变换,得到一个上三角矩阵,求出某一变元的解,然后回迭求解。下面是个例子:#define _CRT_SECURE_ON_WARNINGS#include #include #include usin

2017-07-22 08:59:01 2969

转载 typedef使用方法

看别人代码typedef看不懂,就复习了下typedef的用法。(我要找的是下面的第五种用法)基本定义:typedef为C语言的关键字,作用是为一种数据类型定义一个新名字。这里的数据类型包括内部数据类型(int,char等)和自定义的数据类型(struct等)。 在编程中使用typedef目的一般有两个,一个是给变量一个易记且意义明确的新名字,另一个是简

2017-07-22 08:31:44 415

原创 同余定理 应用于大整数取模

数学上,两个整数除以同一个整数,若得相同余数,则二整数同余(英文:Modular arithmetic;德文:Kongruenz)。同余理论常被用于数论中。最先引用同余的概念与符号者为德国数学家高斯。——摘自 百度百科(a + b)% n = ((a % n) + (b % n)) % n(a - b) % n = ((a % n) - (b % n) + n) % n

2017-07-21 19:20:11 929

原创 矩阵快素幂 板子

求递推公式的第n项,当n很大时,用矩阵快速幂很有效。时间复杂度O(m^3*logn),m为递推公式跨越了几项。以杭电2017女生专场赛 happy necklace 为例,看如何套板子。分析的递推公式 如图:根据递推公式写出计算an的矩阵,然后套下面板子(计算矩阵乘时,有优化)#define _CRT_SECURE_NO_WARNINGS#include #

2017-07-21 09:31:52 457

原创 Lowest Common Ancestor 最近公共祖先 过了初 中级测试,附:国外大神满分简洁代码

LCA:最近公共祖先,对于有根树T的两个节点u,v,最近公共祖先LCA(T,u,v)表示一个节点x,满足x是u,v的祖先且x的深度depth尽可能大。https://www.codechef.com/LTIME14/problems/TALCA终于把LCA这棵树给调试好了,在错误中不断修改,用了新学的离线操作,还有前向星存图 也只帮我过了中级测试,高级测试TLE,因为没有发现其中的技巧

2017-07-19 21:59:15 551

原创 poj1442 Black Box 堆维护

前k小放在一个大顶堆里,每要插入一个数,维护这个大顶堆存前k - 1小,第k小就是小顶堆的top小顶堆存k+缓存附:今天福建省第七届大学生程序设计竞赛重现的C题很简单,就是求一个数学期望,由于n个数互不相同,所以任取两个数,都有一个较大的数,不会出现平局的情况,所以胖哥的得分期望就是n*0.5,就是填空题,不用管n张扑克牌的值。Black BoxTime

2017-07-18 20:03:19 276

转载 spoj ORDERSET - Order statistic set Hash+树状数组。附另一种解法,使用了policy based data structrue

这个题本来是学树堆Treap练习的,但是我的板子超时,无奈之下去墙那边看了下,老外用了树状数组给解出来了,很巧妙的离散化操作。。。Orz。。。ORDERSET - Order statistic set#tree #binary-searchEnglishVietnameseIn this problem, you have

2017-07-17 21:52:25 570

原创 hdu4348 为 心灵之旅To The Moon 出的 时光穿梭 题。主席树

摘自知乎:最后一刹那,心电检测仪发出永恒的线声,耳机传来主题曲,画面定格在美丽的月球,情绪被扯进澎湃的漩涡中,眼睛开始模糊时,我才明白:……

2017-07-16 08:52:04 556

原创 主席树练习

spoj D-query查询区间不同数目的个数//求区间不同数的个数#define _CRT_SECURE_NO_WARNINGS#include #include #include #include using namespace std;const int N = 30007; //最多N个数const int M = N * 100;int n, q, tot; /

2017-07-15 19:47:13 268

转载 归并树讲解

划分树和快排划分有关,归并树和归并排序的归并有关。 在求解区间第k个数的问题,除了划分树以外我们还可以使用另一种高效的方法 ------ 归并树。1、算法描述        所谓归并树,就是利用线段树的建树过程,将归并排序的过程保存。(不会线段树:here,不会归并排序:here)。在说明归并树之前我们先看看这样的一个问题:[plain] view pl

2017-07-14 14:57:59 687

原创 CodeForces 424 Div2 CBA题

代码中镶嵌了很多注释,E题我想用BIT,但不知道该保存写什么值C. Jury Markstime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputPolycarp watched TV-show wher

2017-07-14 11:07:40 386

原创 C++11中for循环的新操作

之前STL中有 for_each 语句C++11新增了java中的 增强的for循环(Dev C++编译器还不支持,我用的VS2017)e.g.#define _CRT_SECURE_NO_WARNINGS#include using namespace std;#define N 10int tmp[N];int main(){ for (int i = 0; i <

2017-07-14 10:29:37 620

原创 hdu3473 划分树练习

划分树解这种求区间第k大,或者在加些变化的问题,真有效,577MS,限时8s。但不看板子,还敲不出来。Minimum SumTime Limit: 16000/8000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 4344    Accepted Submissi

2017-07-13 19:36:23 356

原创 TopCoder SRM 718

除了第一题我用C with STL写的,其他两个是java题解Problem StatementThe city of Byteland has plans to give the city a new skyline by building n new skyscrapers in a row. The skyscrapers will be numbered 0 thr

2017-07-13 17:40:44 629

转载 划分树讲解

搜索关于划分树的讲解,竟然搜到了郑大媛学姐的博文,不是这篇原博文有错误,我就不给出原链接了用划分树来解决选定区间内的第K大值,其实也就两步!一步是建树,另一步则是查询。     先说我对建树的理解吧!    建树的过程很简单:两步就OK了!   第一步:找到序列的中位数,把大于中位数的扔到中位数的左边,小于中位数的扔到数的右边。这样整个序列就被

2017-07-12 18:31:36 360

原创 查询区间第k大 POJ2104 暴力 or 划分树 or 归并树

POJ2104多次查询区间第K大法一:一次排序+暴力,7s (后面是划分树解法)#include #include #define N 100007int ary[N], id[N];bool cmp(int x, int y) { return ary[x] < ary[y];}int main(){ int n, m; while(~scanf("%d%d", &n, &m)) {

2017-07-12 15:44:18 377

原创 codeforces 423 ABC三题题解

http://codeforces.com/contest/828A模拟题,顺着题意来#define _CRT_SECURE_NO_WARNINGS #include #include #include using namespace std;int main(){ int n, a, b; while(~scanf("%d%d%d", &n, &a, &b))

2017-07-12 10:26:08 620

转载 堆-数据结构

学习Treap前先把堆回顾一下堆堆的基本性质堆也可以说是一个完全二叉树,就是除了最底层的,其它层是满的,既然我们可以用完全二叉树来表示一个堆,那么我们这里就采用数组结构的二叉树来阐述堆的性质。 假设在这里我们用数组A表示堆,A[i]表示堆里面的第i个元素,于是我们通过二叉树的性质可知:PARENT(i) = i/2LEFTCHILD(i) = 2*iRI

2017-07-11 20:20:20 348

原创 记笔记

变量前有 :: 意为引用全局变量。若有正确的代码,自己写的代码错了,和正确的对拍,可以变量名不一样,可以用此方法。int *p = :: ary;那么指针p指向全局的数组。智能搜索:有时百度搜索可能会一些信息是我们不想要的。可以用搜索技巧。关键字 site:blog.csdn.net 这个搜索限定了搜索范围为csdn博客网站。

2017-07-11 16:14:53 292

原创 区间更新 区间和查询 带有延迟标记 线段树 hdu1698; 附:csa 区间加值,维护最大值

hdu1698成段更新(通常这对初学者来说是一道坎),需要用到延迟标记(或者说懒惰标记),简单来说就是每次更新的时候不要更新到底,用延迟标记使得更新延迟到下次需要更新or询问到的时候线段树功能:update:成段替换 (由于只query一次总区间,所以可以直接输出1结点的信息)#define _CRT_SECURE_NO_WARNINGS#in

2017-07-11 13:59:50 424

原创 单点更新 区间查询最值 线段树 杭电hdu1754

单点更新 区间查询最值 线段树 杭电hdu1754初学线段树,觉得线段树美在它的递归实现,可以更新,RMQ算法可以实现区间查询最值,我不知道怎么修改#define _CRT_SECURE_NO_WARNINGS#include #include #include using namespace std;const int N = 200007;//线段树的节点seg

2017-07-11 08:27:21 451

原创 单点更新 “区间和”最值查询 线段树解法 和 BIT解法 杭电hdu1166

对于单点更新,区间查询,更喜欢用树状数组解。hdu1166 敌兵布阵 BIT二叉索引树,树状数组版#define _CRT_SECURE_NO_WARNINGS#include #include #define N 50007inline int lowbit(int x) { return x & (-x);}int bit[N], n, a[N];voi

2017-07-11 07:42:54 264

转载 线段树讲解及例题

线段树转一:线段树基本概念1:概述线段树,类似区间树,是一个完全二叉树,它在各个节点保存一条线段(数组中的一段子数组),主要用于高效解决连续区间的动态查询问题,由于二叉结构的特性,它基本能保持每个操

2017-07-10 18:03:26 1622

转载 SPOJ3267 D-Query 树状数组离线操作 或 主席树 查询某一区间内有多少不同的数

D-Query看的网上的,不甚理解。代码中有注释。维护树状数组C[i], sum(x)指 A[1:x]中有几个不同的数字DQUERY - D-query#sorting #treeEnglishVietnameseGiven a sequence of n numbers a1, a2, ..., an and a number of d-queries. A d-query is a pai

2017-07-10 14:18:44 360

转载 主席树讲解

——————————————————————————————————————————————————————————————————————————————————————————————以下转自http://prominences.weebly.com/1/post/2013/02/1.html可持久化线段树,也叫作函数式线段树,也就是主席树,(。。。因为先驱就是fotile主席

2017-07-10 11:26:34 349

原创 一切都会好起来的

已经是准大三的人了,打完这个赛季就要退休了。回顾之前的比赛,郑大的成绩是越来越下滑。可能与学校实行卓越有关吧,因为时间上是吻合的。不过郑大会好起来的,学校从今年已经开始自主招生了,今年招了20个信息学竞赛的高中生,8点整了,不说了,打个网赛。 历年省赛榜单:2012  http://wujun8.iteye.com/blog/2091075 2013  http:/

2017-07-09 20:00:32 412

原创 上海大学五校联赛-神无月排位赛

大多游戏题都是模拟题这场比赛毕竟是人家上海人的线下赛,网络卡的不行,这道模拟题,我初写时把一个变量fg设置为了char字符型(因为比赛结果只有输赢0或1),我习惯了节省空间,可是后来用了if(fg) 判断,不管fg = '0', ascii = 48,还是'1’49,if判断都为真。我把代码给大神了,结果错了。后来我就把char fg, 改为了int fg,再次把代码给大神,可是网络卡,再

2017-07-09 17:13:18 1310

原创 Card Trick poj3032 软2的同学,还记得这道题吗

利用vector的解法软二的同学们,还记得老师布置的POJ3032那道题吗?当时在学搜索,是练习搜索的。POJ3032 数据范围小 n <= 13。现在 n <= 20000。还用搜索肯定会超时,甚至搜不出来。最后面是我的解法,先给出正解。利用一个容器维护剩余牌的数目及位置,O(1)时间内确定下

2017-07-08 15:15:23 354

原创 Chaos Strings BIT类似求逆序数

Runing on judge 1 5 9 28……Accepted处理字符串,根据字符串的字典序对其进行赋予权值,接近a的权值大些,然后在按转置的字符串X' 对 X(原串)进行排序,再然后就是很裸的树状数组模板求逆序数了。Little Lovro likes to play games with words. During the last few weeks he

2017-07-08 13:33:23 352

原创 Cows poj2481 树状数组应用

在纸上写写画画可以理解#define _CRT_SECURE_NO_WARNINGS//这就类似于会场安排,求区间的真子集 #include #include #include #define N 100007using namespace std;int bit[N], n;int cnt[N];//第i条线段是多少条线段的真子集 struct Cows { int s

2017-07-08 10:27:32 319

Android访问MySQL云端数据库示例

Android访问MySQL云端数据库示例。因为有几个学习者在询问示例,我就写了一个,共勉。无耐下载资源不能选择为0. 也可以到我的GitHub上下载https://github.com/zzuwenjie/coding18/tree/master/Android

2018-04-21

Treap 树堆 和 Skip Lists

Treap数据结构和Skip Lists,英文附图解,若侵犯版权,我立即删掉

2017-07-17

音乐图标formyblog

音乐图标 for my blog's new moudle

2017-06-13

算法 for Acmer

Acmer 必须会的一些算法,内有目录,可以链接到指定章节。

2017-05-24

背包九讲2_pdf

背包九讲,耐心看,都能看懂

2017-04-14

部分常用函数for acmer

把我的代码片,搜集了一下,省赛选拔用得

2017-04-12

STL标准模板库

C++ STL 英文,标准模板库

2017-03-24

Java 1.5 API 中文

Java 1.5 API 中文帮助文档

2017-03-24

Java 1.8 API

Java 1.8 API 英文帮助文档

2017-03-24

组合数学第五发

这已经是我从网上找到的最清晰的《组合数学》第五版了,我用积分下载的,可以下载看看

2017-03-06

杭电11页Java代码

杭电acm 11页Java代码

2016-10-14

CodeBlocks.mo

serach by yourself

2016-10-02

MATLAB R2014b 许可协议文件

安转MATLAB R2014b时所需的许可证文件 附安装秘钥:18121-53267-24795-29293-33561-00091-20592 我用的这个秘钥,还在安装中

2016-09-22

空空如也

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

TA关注的人

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