自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

nike0good |Oier&ACMer | 熟能生巧

有所作为是生活中的最高境界。

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

原创 BZOJ 4776([Usaco2017 Open]Modern Art-想法题)

已知一个矩阵,初始全0,你每一次选一个非空子矩阵,涂上一个数。 现在你涂n^2次,其中1~n^2每个数用一次,问哪个数可能是第一次涂的。我们预先框出每个数字涂的最小子矩阵,然后看看哪些格子是重叠的,显然重叠的地方我们可以排除最后覆盖的数字,剩下的都可以涂。 特判只有一个格子被覆盖的情况。#include <iostream>#include <cmath>#include <algorith

2017-03-31 14:43:37 820

原创 BZOJ 1951([Sdoi2010]古代猪文-lucas)

求G∑d|nC(n,d)mod(F−1)modFG^{\sum_{d|n}C(n,d) \bmod (F-1)} \bmod Flucas+中国剩余定理+费马小定理#include <iostream>#include <cmath>#include <algorithm>#include <cstdio>#include <cstring>#include <string>#inclu

2017-03-29 14:14:13 531

原创 CF438D(The Child and Sequence-线段树mod x)

维护一个区间的和,支持单点修改,区间mod x考虑a>xa>x,时,amodx<a/2a \bmod x < a / 2,否则a=x所以暴力维护就行了#include <iostream>#include <cmath>#include <algorithm>#include <cstdio>#include <cstring>#include <string>#include <vec

2017-03-28 20:57:38 612

原创 BZOJ 1797([Ahoi2009]Mincut 最小割-最小割的可行边与必行边)

A. 恶魔包毁灭世界已知一张二分图,问哪些边是二分图的可行边? 先跑最小流,再把残余网络建图,几个重要结论是: ·最小割的可行边(满流&&2点不在一个SCC中) ·最小割的必行边(可行边&&2点分别与源点和汇点在同一SCC中) ·二分图的可行边(两点在一个SCC中)#include <iostream>#include <cmath>#include <algorithm>#inclu

2017-03-27 17:49:05 473

原创 BZOJ 2751([HAOI2012]容易题(easy)-暴力)

Description为了使得大家高兴,小Q特意出个自认为的简单题(easy)来满足大家,这道简单题是描述如下: 有一个数列A已知对于所有的A[i]都是1~n的自然数,并且知道对于一些A[i]不能取哪些值,我们定义一个数列的积为该数列所有元素的乘积,要求你求出所有可能的数列的积的和 mod 1000000007的值,是不是很简单呢?呵呵!Input第一行三个整数n,m,k分别表示数列元素的取值范围

2017-03-27 16:17:07 564

原创 BZOJ 2661([BeiJing wc2012]连连看-费用流)

Description凡是考智商的题里面总会有这么一种消除游戏。不过现在面对的这关连连看可不是QQ游戏里那种考眼力的游戏。我们的规则是,给出一个闭区间[a,b]中的全部整数,如果其中某两个数x,y(设x>y)的平方差x2-y2是一个完全平方数z2,并且y与z互质,那么就可以将x和y连起来并且将它们一起消除,同时得到x+y点分数。那么过关的要求就是,消除的数对尽可能多的前提下,得到足够的分数。快动手动

2017-03-27 16:15:45 357

原创 北方大学 ACM 多校训练赛 第四场 题解

A. 恶魔包毁灭世界已知一张二分图,问哪些边是二分图的可行边? 先跑最小流,再把残余网络建图,几个重要结论是: ·最小割的可行边(满流&&2点不在一个SCC中) ·最小割的必行边(可行边&&2点分别与源点和汇点在同一SCC中) ·二分图的可行边(两点在一个SCC中)#include <iostream>#include <cmath>#include <algorithm>#inclu

2017-03-27 10:12:09 988

原创 BZOJ 2671(Calc-数论反演)

Description  给出N,统计满足下面条件的数对(a,b)的个数:   1.1<=a#include<bits/stdc++.h> using namespace std;#define For(i,n) for(int i=1;i<=n;i++)#define Fork(i,k,n) for(int i=k;i<=n;i++)#define ForkD(i,k,n) for(in

2017-03-26 23:29:01 423

原创 “玲珑杯”ACM比赛 Round #9 题解 (待续)

A Check-in Problem#include<bits/stdc++.h>using namespace std;#define For(i,n) for(int i=1;i<=n;i++)#define Fork(i,k,n) for(int i=k;i<=n;i++)#define Rep(i,n) for(int i=0;i<n;i++)#define ForD(i,n) f

2017-03-23 12:10:55 469

原创 BZOJ 2733([HNOI2012]永无乡-Treap启发式合并)

2733: [HNOI2012]永无乡 Time Limit: 10 Sec Memory Limit: 128 MB Submit: 3219 Solved: 1706 [Submit][Status][Discuss] Description永无乡包含 n 座岛,编号从 1 到 n,每座岛都有自己的独一无二的重要度,按照重要度可 以将这 n 座岛排名,名次用 1 到 n 来表示。某些

2017-03-22 15:28:41 372

原创 BZOJ 3196(Tyvj 1730 二逼平衡树-线段树套Treap)

Description您需要写一种数据结构(可参考题目标题),来维护一个有序数列,其中需要提供以下操作: 1.查询k在区间内的排名 2.查询区间内排名为k的值 3.修改某一位值上的数值 4.查询k在区间内的前驱(前驱定义为小于x,且最大的数) 5.查询k在区间内的后继(后继定义为大于x,且最小的数) Input第一行两个数 n,m 表示长度为n的有序序列和m个操作 第二行有n个数,表示

2017-03-22 08:33:14 421

原创 Tyvj P1728(普通平衡树-平衡树的主要操作)

背景 此为平衡树系列第一道:普通平衡树 描述 您需要写一种数据结构(可参考题目标题),来维护一些数,其中需要提供以下操作: 1. 插入x数 2. 删除x数(若有多个相同的数,因只删除一个) 3. 查询x数的排名(若有多个相同的数,因输出最小的排名) 4. 查询排名为x的数 5. 求x的前驱(前驱定义为小于x,且最大的数) 6. 求x的后继(后继定义为大于x,且最小的数) 输入格式

2017-03-21 09:04:18 502

原创 Codeforces Round #405 (rated, Div. 1, based on VK Cup 2017 Round 1) 题解(待续)

Bear and Different Names手速题#include<bits/stdc++.h>using namespace std;#define For(i,n) for(int i=1;i<=n;i++)#define Fork(i,k,n) for(int i=k;i<=n;i++)#define Rep(i,n) for(int i=0;i<n;i++)#define Fo

2017-03-20 17:22:10 458

原创 HDU 4585(Shaolin-Treap的lower_bound&upper_bound操作)

题意:有n个数,每个数进来时求出与它与它最接近的数的编号(多个答案选数小的)模板测试#include <iostream>#include <cmath>#include <algorithm>#include <cstdio>#include <cstring>#include <string>#include <vector>#include <map>#include <fun

2017-03-20 10:19:10 346

原创 中国(北方)大学生程序设计训练赛(第三周)(List likes playing card-期望)

List’s father morejarphone likes playing poker with List very much. Now List has a deck of playing card, consisting of a black cards and b red cards. List shuffles the cards randomly, puts them on the

2017-03-20 09:16:45 493

原创 中国(北方)大学生程序设计训练赛(第三周)(Interesting sequence-找规律)

The first member of the considered sequence is 1. To generate a member of the sequence from the previous member, double the previous one and apply “digit sort-ing” to the result. The first 15 members o

2017-03-20 09:09:52 427

原创 UOJ #228(基础数据结构练习题-区间开根+区间加+区间求和)

给出一个长度为 n 的数列 A,接下来有 m 次操作,操作有三种:对于所有的 i∈[l,r],将 Ai 变成 Ai+x。 对于所有的 i∈[l,r],将 Ai 变成 √Ai(向下取整)。 对于所有的 i∈[l,r],询问 Ai 的和。 作为一个不怎么熟练的初学者,sylvia 想了好久都没做出来。而可怜酱又外出旅游去了,一时间联系不上。于是她决定向你寻求帮助:你能帮她解决这个问题吗。#incl

2017-03-17 22:07:18 953

原创 Codeforces Round #404 (Div. 2) 题解(待续)

A Anton and Polyhedrons手速题#include<bits/stdc++.h>using namespace std;#define For(i,n) for(int i=1;i<=n;i++)#define Fork(i,k,n) for(int i=k;i<=n;i++)#define Rep(i,n) for(int i=0;i<n;i++)#define For

2017-03-17 16:00:06 301

原创 中国(北方)大学生程序设计训练赛(第二周)(Problem G: Connected Components-并查集)

给一张图,点数n<=100000,每个点有一个权1≤Xi≤10000001\le X_i\le1000000,两点不互质则连边,求连通块个数。对于每个权值把它的素因子也纳入图,然后每个权值与其素因子连边。 注意特判1#include <iostream>#include <cmath>#include <algorithm>#include <cstdio>#include <cstrin

2017-03-14 11:14:09 1491

原创 中国(北方)大学生程序设计训练赛(第二周)(Problem C: A Water Problem-dp)

给一个数,+−1+-1代价x,*2代价y,问从0变成n≤1e7\le1e^7的最小代价如果一个数翻倍后2次-1,不如先-1再翻倍。在只考虑+1,*2的情况下计算代价,并不断用f(x+1)f(x+1)更新f(x)f(x)#include <iostream>#include <cmath>#include <algorithm>#include <cstdio>#include <cstrin

2017-03-14 11:08:42 408

原创 中国(北方)大学生程序设计训练赛(第二周)(Problem B: A Boring Game-乱搞)

给2n个数,对其中n个向上取整,n个向下取整,问前后的数的和的最小差值。把所有数的整数部分去掉。 若0<x<10<x<1,δ=−x/1−x\delta=-x/1-x,此时和=n−∑xi=n-\sum{x_i} 若x=0x=0,δ=0\delta=0 因此答案只和有几个0向上取整相关#include <iostream>#include <cmath>#include <algorithm>

2017-03-14 09:49:23 446

原创 中国(北方)大学生程序设计训练赛(第二周)(Problem A: Common Substrings-hash)

给你2个字符串,问第一个字符串有几个后缀是另一个的前缀。hash#include <iostream>#include <cmath>#include <algorithm>#include <cstdio>#include <cstring>#include <string>#include <vector>#include <map>#include <functional>#

2017-03-14 09:38:46 547

原创 中国(北方)大学生程序设计训练赛(第一周)(Problem B: 埃蒙的时空航道-最小割转dp+贪心)

Description埃蒙的军队部署在 n 个星球,星球的编号分别为 1∼n 埃蒙在第i 个星球驻扎着 p i 个单位的军队。据可靠情报,若干天后指挥官们会往第 i 个星球派出 si 个单位的军队。星球两两之间具有时空航道,埃蒙可以从起点星球发射一架最多容纳 c 个单位部队的穿梭机到终点星球。但是,这些时空航道都是单向的,穿梭机只能从编号更小的星球运送部队到编号更大的星球。埃蒙可以以任意

2017-03-10 11:17:03 540

原创 BZOJ 4766(文艺计算姬-矩阵树定理+找规律)

Description“奋战三星期,造台计算机”。小W响应号召,花了三星期造了台文艺计算姬。文艺计算姬比普通计算机有更多的艺 术细胞。普通计算机能计算一个带标号完全图的生成树个数,而文艺计算姬能计算一个带标号完全二分图的生成树 个数。更具体地,给定一个一边点数为n,另一边点数为m,共有n*m条边的带标号完全二分图K_{n,m},计算姬能快 速算出其生成树个数。小W不知道计算姬算的对不对,你能帮

2017-03-09 09:39:51 526

原创 中国(北方)大学生程序设计训练赛(第一周)(Problem F: 等差区间-线段树+等差数列平方和公式)

对一长度为10510^5的静态序列进行q次询问,每次询问某段区间元素是否排序后能成为等差数列#include <iostream>#include <cmath>#include <algorithm>#include <cstdio>#include <cstring>#include <string>#include <vector>#include <map>#include

2017-03-07 16:14:45 600

原创 中国(北方)大学生程序设计训练赛(第一周)(Problem E: Water Problem-矩阵快速幂)

已知f(1),f(2),n, f(n+1)=f(n)+f(n-1)+sin(n*Pi/2),(n>=2) 求f(n)矩阵快速幂,周期乘4个矩阵#include<cstdio>#include<cstring>#include<cstdlib>#include<algorithm>#include<functional>#include<iostream>#include<cmath>

2017-03-07 16:06:04 376

原创 BZOJ 1209([HNOI2004]最佳包裹-三维凸包)

DescriptionH公司生产了一种金属制品,是由一些笔直的金属条支撑起来的,金属条和别的金属条在交点上被焊接在了一起。现在由于美观需要,在这个产品用一层特殊的材料包裹起来。公司为了节约成本,希望消耗的材料最少(不计裁剪时的边角料的损失)。你的程序需要根据给定的输入,给出符合题意的输出: 输入包括该产品的顶点的个数,以及所有顶点的坐标; 你需要根据输入的计算出包裹这个产品所需要的材料的最小面积

2017-03-07 10:48:13 674

原创 BZOJ 4373(算术天才⑨与等差数列-线段树+hash)

Description算术天才⑨非常喜欢和等差数列玩耍。 有一天,他给了你一个长度为n的序列,其中第i个数为a[i]。 他想考考你,每次他会给出询问l,r,k,问区间[l,r]内的数从小到大排序后能否形成公差为k的等差数列。 当然,他还会不断修改其中的某一项。 为了不被他鄙视,你必须要快速并正确地回答完所有问题。 注意:只有一个数的数列也是等差数列。Input第一行包含两个正整数n,m(1

2017-03-07 10:43:50 435

原创 中国(北方)大学生程序设计训练赛(第一周)(Problem D: 数学题-二分+双指针)

Description 现在有两个数组 A 和 B, 分别包含x与y个元素。 定义一个新的数组 C,C中包含x×y个元素,为A中所有元素除以B中所有元素。 求C中的第k大元素。 n,m<=100000,k<=n*m#include <iostream>#include <cmath>#include <algorithm>#include <cstdio>#include <cstr

2017-03-06 11:02:00 311

原创 BZOJ 4747-4749题解 Usaco2016 Dec

BZOJ 4747: [Usaco2016 Dec]Counting Haybales给出N(1≤N≤100,000)个数,和 Q(1≤Q≤100,000)个询问。每个询问包含两个整数A,B(0≤A≤B≤1,000,00 0,000)。对于每个询问,给出数值在A到B间的数有多少个(包含A与B)。 暴力#include<bits/stdc++.h> using namespace std;

2017-03-03 17:11:40 1187

原创 UVA 11594(All Pairs Maximum Flow-两两之间的最大流,Gusfield算法)

已知一个n<=100个点的无向图,求任意两点间的最大流(最小割) Gusfield专门解决这类问题#include<cstdio>#include<cstring>#include<cstdlib>#include<algorithm>#include<functional>#include<vector>#include<iostream>#include<cmath>#incl

2017-03-03 10:32:10 693

原创 BZOJ 4320(ShangHai2006 Homework-询问分段+并查集)

Description1:在人物集合 S 中加入一个新的程序员,其代号为 X,保证 X 在当前集合中不存在。 2:在当前的人物集合中询问程序员的mod Y 最小的值。 (为什么统计这个?因为拯救 过世界的人太多了,只能取模) Input第一行为用空格隔开的一个个正整数 N。 接下来有 N 行,若该行第一个字符为“A” ,则表示操作 1;若为“B”,表示操作 2; 其中 对于 1

2017-03-02 12:37:18 467

原创 BZOJ 4519([Cqoi2016]不同的最小割-Gusfield算法)

题意:给一幅图,问2点之间最小割有几个不同取值。 1<=N<=850 1<=M<=8500 Gusfield算法如下: 任意选定2点求最小割,割把点集分成2部分, 2部分各取一点,最小割均相同。 所以不断分下去,直到各集合均为单点。#include<cstdio>#include<cstring>#include<cstdlib>#include<algorithm>#includ

2017-03-01 17:28:13 874

空空如也

空空如也

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

TA关注的人

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