自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 资源 (3)
  • 收藏
  • 关注

原创 博客再次搬家

这次搬到了WordPress(因为无法忍受CSDN的Bug和奇慢无比),地址: 6174的星球 https://p6174.wordpress.com/

2017-07-19 08:16:37 280

原创 索引(填坑进度:1%)

先安利《Ever17~The Out of Infinity~》一、USACO Season 1st 2nd 3rd US Open 2016-2017 December 2016 January 2017 February 2017 2017 US Open 2015-2016 December 2015 January 2016 Februa

2017-07-01 18:33:41 407

原创 线段树的一种奇怪的套路

「POI2015」Kinoman 共有 mmm 部电影,编号为 1∼m1∼m1\sim m,第i部电影的好看值为w[i]。 在接下来 nnn 天中,每天会放映一部电影,第 iii 天放映的是第 f[i]f[i]f[i] 部。 你可以选择 l,rl,rl,r (1≤l≤r≤n)(1≤l≤r≤n)(1\le l\le r\le n),并观看第 l,l+1,…,rl,l+1,…...

2018-08-24 20:22:04 252

原创 LA 7158. ACM-ICPC World Finals 2015 I. Ship Traffic

在区间首+1 尾-1的这种方法叫扫描线??#include #include using std::cin;struct Moment { double value; short weight; bool operator const Moment &mo2) { return value == mo2.value ? weight < mo2.weight : va

2018-01-11 18:14:38 244

原创 LA 7155. ACM-ICPC World Finals 2015 F. Keyboarding

BFS 正解就是乱搞系列#include #include char G[50][50];bool mk[50][50][10001];struct QueueNode { int x, y, cur, dist; QueueNode (int x = 0, int y = 0, int cur = 0, int dist = 0): x(x), y(y), cu

2018-01-11 18:13:35 659

原创 LA 7587. ACM-ICPC World Finals 2016 L. Swap Space

贪心#include #include using std::sort;#define kN 1000000struct vv { int a, b; vv(int a = 0, int b = 0): a(a), b(b) {}}p[kN], q[kN];bool cmp1(vv xx, vv yy) { if (xx.a == yy.a) retu

2018-01-11 18:10:07 515

原创 LA 7578. ACM-ICPC World Finals 2016 C. Ceiling Function

树的同构#include using std::cin;using std::cout;using std::endl;struct treenode { int val; treenode *lc, *rc; treenode(int val = 0): val(val), lc(NULL), rc(NULL) {}}tree[50][20];int i, c

2018-01-11 18:09:14 355

原创 Catalan数

一、递推式已知n(n∈N)个元素,约定元素k表示第k个入栈的元素,换句话说,将元素按入栈顺序的先后编号为1~n,称为元素1~n。求可能的出栈顺序的总数Cn。 显然C1=1, C2=2。当n=3时,C3=5,可能的出栈顺序有(用1表示入栈,0表示出栈)出栈顺序123132213231321操作方法101010101100110010110100111000如当n=4时,C4=1

2017-08-09 21:04:11 343

原创 NOIP2012普及组 T3 摆花(加强版)

【题目大意】 用 n 种花摆共 m 盆花,每盆仅能摆一种花,不分每种花、每盆花的顺序,第 i 种花可以不摆,最多摆 aia_i 盆,求方案数。 【输入格式】 共 2 行。第一行包含两个正整数 n 和 m,中间用一个空格隔开。第二行有 n 个整数,每两个整数之间用一个空格隔开,依次表示 a1a_1、a2a_2、……ana_n 。 【输出格式】 一个整数,方案数对10000

2017-07-02 18:23:10 1128

原创 Dijkstra算法(单源最短路问题)

先写一点哈~~这个算法是通过为每个顶点 v 保留目前为止所找到的从 s 到 v 的最短路径来工作的。 初始时,原点 s 的路径长度值被赋为 0 (d[s] = 0),若存在能直接到达的边 (s, m),则把d[m]设为w(s, m),同时把所有其他 s 不能直接到达的顶点的路径长度设为无穷大,即表示我们不知道任何通向这些顶点的路径(对于 V 中所有顶点 v 除 s 和上述 m 外 d[v] = ∞

2016-05-07 21:33:06 681

原创 位运算

用整数表示bool集合(数组)、位运算的常见运用

2016-05-06 09:53:21 276

原创 线段树(Segment Tree)

线段树是用于存储区间的一种树状数据结构。它允许查询所存储的区间含有一个给定的点。它是一个静态数据结构,也就是说,它的结构一旦建立就不能修改(不能中途增删节点)。

2016-05-04 21:36:09 557

原创 GDOI'2016市选day1 —— 2. K叉树(ktree)

【题目描 述】 有一棵巨大的 K 叉树,从上到下,从左到右依次编了 N 个号,这 N 个点就是一棵 K 叉完全树。例如 K=3,N=9: 你需要回答 Q 个查询:从 x 节点到 y 节点最少要经过几条边? 【输入格式】 第 1行输入整数 N(1 ≤ N ≤ 101510^{15}), K(1 ≤K ≤ 1,000 ), Q(1 ≤ Q ≤ 100,000)。

2016-04-04 22:15:16 604

原创 GDOI'2016市选day2 —— 2. 选举(ele)

【题目描述】 某个国家正在进行一场总统选举。共有 N 名总统候选人,有 10000 个选民。 每个选民只能择其中的某一候选人,然后投 1 票给该候选人,选民不能弃权。 候选人没有投票权。投票完毕后,组委会要统计得票。 对于每一位候选人,组委会要计算出该候选人得票数占的百分比,然后把四舍五入结果作为第 i个候选人的得票率。 例如:某候选人的得票是 1149 票,那么百

2016-04-04 20:33:34 401

原创 GDOI'2016市选day1 —— 3. 最大值求和 (summax)

【题目描述】 为了研究大奖赛的概率问题,数学家提出这样一个问题: 有编号是 1 到 N 的小球,每个上面有数字aia_i 。把从 N 个球选 K 个的所有方法都列出来,每种取法都得到 K 个球上的 K 个数字,其中最大的作为这组代表。 请计算这些代表的和。 【输入格式】 第 1行: 2个整数 N和 K(1 ≤ N ≤ 10 ,000,000 ,1 ≤ K ≤ 50)。

2016-04-04 11:54:28 397

原创 get√ Java

刚写了HelloWorld

2016-04-03 15:58:20 260

原创 GDOI'2016市选day2 —— 解密(code)

最大测试点用时不超过0.2秒#include <fstream>#include <algorithm>using namespace std;ifstream fin("code.in");ofstream fout("code.out");const int MAXN = 1000001;int a[MAXN], d[MAXN], M[MAXN];int main() { int

2016-04-03 11:39:51 460

原创 GDOI'2016市选day1 —— 组题(pro)

【题目描述】 GDOI2016 将于 4 月 30 日至 5 月 3 日在四会中学举行,为了准备这次比赛,评委们正忙着出题。题目难度分为“简单题”、“中等题”、“难题”三个等级。评委们已经出好了 E 道简单题, M 道中等题, H 道难题。然后评委们又出了 EM道“简中”题和 MH 道“中难”题。所谓的“简中题”是指该类型的题既可以归类为“简单题”也可以归类为“中等题”。所谓的“中难题”是指该

2016-03-27 13:15:39 941

原创 USACO 2016 Jan Gold 愤怒的奶牛(Angry Cows)

原题目 数据 正解 【题目描述】 奶牛 Bessie 设计了一个游戏:“愤怒的奶牛”。游戏原型是:有一些可爆炸的草堆分布在一条数轴的某些坐标上,玩家用弹弓把一头奶牛发射到数轴上。奶牛砸到数轴上的冲击波会引发附近的草堆爆炸,并有可能引起附近的草堆连环爆炸。游戏的目标是玩家用一头奶牛炸掉所有的草堆。

2016-03-01 13:51:26 2450

原创 USACO 2016 Jan Silver 愤怒的奶牛(Angry Cows)

题目 数据 官方题解 【题目描述】 奶牛Bessie设计了一个游戏:“愤怒的奶牛”。游戏的原型是:有一些可爆炸的草堆分布在一条数轴的某些坐标上,玩家用弹弓把一头奶牛发射到数轴上。奶牛砸到数轴上的冲击波会引发附近的草堆爆炸。游戏的目标是玩家用一些奶牛炸掉所有的草堆。 有N个草堆在数轴的不同位置,坐标为x1,x2,….,xnx_1,x_2,….,x_n。如果玩家把奶牛发射到坐标是x,能量

2016-02-28 14:19:11 2870

原创 最长上升子序列 LIS (Longest Increasing Subsequence)

已知一个有N个数的数列a0,a1,...,aN−1a_0, a_1, ..., a_{N-1},求该数列的一个子序列a′0,a′1,...,a′M−1a'_0, a'_1, ..., a'_{M-1},使a′0≤a′1≤...≤a′M−1a'_0≤a'_1≤ ...≤ a'_{M-1},且M尽量大。注意:子序列意思是a′i,a′i+1a'_i, a'_{i+1}映射到aa的编号不一定连续,但相对位置

2016-02-24 14:20:09 1007

原创 范围最小值查询 RMQ (Range Minimum Query)

本文分别描述了用线段树、稀疏表、平方分割等方法解决静态RMQ、单点修改RMQ以及区间修改RMQ,主要参考了TopCoder的https://www.topcoder.com/community/data-science/data-science-tutorials/range-minimum-query-and-lowest-common-ancestor/

2016-02-24 13:21:33 1842

原创 Kruskal 算法(最小生成树)

原理1、将G所有条边按权从小到大排序,MST开始为空。 2、从小到大次序取边(x,y)。 3、若加入边(x,y),MST就有环,则放弃此边,转(2)。 4、将边(x,y)加入MST,如果已经加了n-1条边,结束。否则转(2)。实现方法最容易想到的方法是暴力,但用并查集的实现则更简洁高效,时间复杂度大约为O(|E|log2|E|+α*|V|)。

2016-01-21 22:54:53 865

原创 Bellman-Ford 算法 & SPFA(单源最短路问题)

一、Bellman-Ford算法Bellman-Ford 算法是单源最短路问题的一种算法,相比 Dijkstra 算法,它可以处理含有负权回路(也叫负权环,negative cycles)的图。 Dijkstra 算法以贪心法选取未被处理的具有最小权值的节点,然后对其的出边进行松弛操作; 而 Bellman-Ford 算法简单地对所有边进行松弛操作,共|V| − 1次,其中 |V|是图的点

2016-01-03 14:27:18 526

原创 树状数组 BIT (Binary Indexed Tree)

还没想好怎么解释,先贴程序片int SUM(int s, int t){ return sum(t) - sum(s-1);}int sum(int i){ int ans = 0; while (i > 0) { ans += BIT[i]; i -= i & -i; } return ans;}void

2015-12-27 14:46:24 379

原创 Floyd-Warshall算法 (任意两点间的最短路问题)

这个算法本质上就是动态规划。 首先我们给有V个顶点的图每个顶点标号0~V-1,则设d[k][i,j]为点i到点j的路径中标号最大(不包括i和j)的点为k,则可得状态转移方程 d[k][i,j] = min(d[k-1][i,k]+d[k-1][k,j], d[k-1][i,j]).#include <fstream>#include <algorithm>using namespace st

2015-12-27 11:11:03 894

原创 NOIP2015普及组 —— 推销员(salesman)

#include <fstream>#include <algorithm>using namespace std;ifstream fin("salesman.in");ofstream fout("salesman.out");const int MAX_N = 100000, INT_MIN = 1<<31;struct Tnode{ int a, id;} a[MAX_N

2015-12-17 14:14:28 2334

原创 NOIP2015提高组day1 —— 信息传递(message)

#include <fstream>using namespace std;ifstream fin("message.in");ofstream fout("message.out");const int MAX_n=200000;int T[MAX_n], a[MAX_n];int find_ancestor(int root){ if (a[root] == root)

2015-12-12 22:18:08 425

原创 NOIP2015提高组day2 —— 跳石头(stone)

#include <fstream>using namespace std;ifstream fin("stone.in");ofstream fout("stone.out");int N, a[100000];int Binary_Search(int first, int last){ if (first == last) return first;

2015-12-05 00:40:48 1421

原创 最近公共祖先 LCA (Lowest Common Ancestor)

【题目描述】 在有根树中,两个节点 u 和 v 的公共祖先中距离最近的被称为最近公共祖先LCA。 给出一棵有根树,有 M 对查询,求每一对 u 和 v 的LCA。 【输入格式】 第一行,N,表示这棵树有 N 个节点。 第二行~第 N 行,x 和 y,表示 x 是 y 的祖先。 第 N+1 行,M。 第 N+2 行~第 N+M+1行,u 和 v。 【输出

2015-12-04 22:36:05 595

转载 欢迎使用CSDN-markdown编辑器

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2015-11-30 14:07:23 218

冬令营 2015 讲课资料

冬令营 2015 讲课资料 拟阵选讲.pdf 计算几何讨论.pptx 计数.pdf 构造.pptx 动态图.pdf slides.pdf...

2018-02-06

快排杀手(把非随机化的快排卡到平方级).A Killer Adversary for Quicksort

把非随机化的快排卡到平方级.A Killer Adversary for Quicksort. M. D. MCILROY

2018-02-06

java JRE 7u80

java JRE 7u80

2015-12-13

空空如也

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

TA关注的人

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