自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(85)
  • 收藏
  • 关注

原创 Hello World

第一篇博客。 继承cssyz的传统。#include<cstdio>int main(){ printf("Hello World!"); return 0;}%%%YSP大神 【洗澡高手】⇒Hxl 【文件永远在保护的】⇒Pl 【机房第一大神,手速王】⇒Pyh 【数据结构之神】⇒Xcc 【二次元老手】⇒Yyj 【切题高手】⇒Yzy 【勤奋的MZ】⇒Zcx 【打正

2017-06-04 17:31:59 759

原创 OpenGL学习笔记(LearnOpenGL)正在更新

目录OpenGL简介OpenGL是什么立即渲染模式与核心模式OpenGL实现:状态机使用GLFW创建窗口使用GLAD获取OpenGL函数地址创建窗口一些常用回调函数渲染循环双缓冲渲染管线(Pipeline)学习资料来源:LearnOpenGL CNOpenGL简介OpenGL是什么一般它被认为是一个API(Application Programming Interface, 应用程序编程接口),包含了一系列可以操作图形、图像的函数。然而,OpenGL本身并不是一个API,它仅仅是一个由Khronos

2021-01-11 15:14:18 309

原创 [题解]bzoj1056/1862 Zjoi2006 GameZ游戏排名系统

DescriptionGameZ为他们最新推出的游戏开通了一个网站。世界各地的玩家都可以将自己的游戏得分上传到网站上。这样就可以看到自己在世界上的排名。得分越高,排名就越靠前。当两个玩家的名次相同时,先上传记录者优先。由于新游戏的火爆,网站服务器已经难堪重负。为此GameZ雇用了你来帮他们重新开发一套新的核心。排名系统通常要应付三种请求:上传一条新的得分记录、查询某个玩家的当前排名以及返回某个区段内

2017-08-18 09:28:59 736

原创 [题解]bzoj1588 HNOI2002 营业额统计

Description营业额统计 Tiger最近被公司升任为营业部经理,他上任后接受公司交给的第一项任务便是统计并分析公司成立以来的营业情况。 Tiger拿出了公司的账本,账本上记录了公司成立以来每天的营业额。分析营业情况是一项相当复杂的工作。由于节假日,大减价或者是其他情况的时候,营业额会出现一定的波动,当然一定的波动是能够接受的,但是在某些时候营业额突变得很高或是很低,这就证明公司此时的经营状况

2017-08-18 09:22:08 893

原创 [题解]bzoj1691 Usaco2007Dec 挑剔的美食家

Description与很多奶牛一样,Farmer John那群养尊处优的奶牛们对食物越来越挑剔,随便拿堆草就能打发她们午饭的日子自然是一去不返了。现在,Farmer John不得不去牧草专供商那里购买大量美味多汁的牧草,来满足他那N(1 <= N <= 100,000)头挑剔的奶牛。 所有奶牛都对FJ提出了她对牧草的要求:第i头奶牛要求她的食物每份的价钱不低于A_i(1 <= A_i <= 1,0

2017-08-18 09:17:34 858

原创 [题解]bzoj4034 HAOI2015 树上操作

Description有一棵点数为 N 的树,以点 1 为根,且树点有边权。然后有 M 个 操作,分为三种: 操作 1 :把某个节点 x 的点权增加 a 。 操作 2 :把某个节点 x 为根的子树中所有点的点权都增加 a 。 操作 3 :询问某个节点 x 到根的路径中所有点的点权和。Input第一行包含两个整数 N, M 。表示点数和操作数。接下来一行 N 个整数,表示树中节点的初始权值。接

2017-08-18 09:08:12 765

原创 [题解]bzoj2243 SDOI2011 染色

Description给定一棵有n个节点的无根树和m个操作,操作有2类: 1、将节点a到节点b路径上所有点都染成颜色c; 2、询问节点a到节点b路径上的颜色段数量(连续相同颜色被认为是同一段),如“112221”由3段组成:“11”、“222”和“1”。 请你写一个程序依次完成这m个操作。Input第一行包含2个整数n和m,分别表示节点数和操作数; 第二行包含n个正整数表示n个节点的初始颜色

2017-08-18 08:56:48 877

原创 [题解]hdu1828 Picture

DescriptionA number of rectangular posters, photographs and other pictures of the same shape are pasted on a wall. Their sides are all vertical or horizontal. Each rectangle can be partially or totally

2017-08-17 10:54:39 711

原创 [题解]hdu1255 覆盖的面积

Description给定平面上若干矩形,求出被这些矩形覆盖过至少两次的区域的面积. Input输入数据的第一行是一个正整数T(1<=T<=100),代表测试数据的数量.每个测试数据的第一行是一个正整数N(1<=N<=1000),代表矩形的数量,然后是N行数据,每一行包含四个浮点数,代表平面上的一个矩形的左上角坐标和右下角坐标,矩形的上下边和X轴平行,左右边和Y轴平行.坐标的范围从0到100000

2017-08-17 10:48:21 825

原创 [题解]hdu1542 Atlantis

DescriptionThere are several ancient Greek texts that contain descriptions of the fabled island Atlantis. Some of these texts even include maps of parts of the island. But unfortunately, these maps des

2017-08-17 10:44:06 740

原创 [题解]bzoj3813 奇数国

Description在一片美丽的大陆上有100000个国家,记为1到100000。这里经济发达,有数不尽的账房,并且每个国家有一个银行。某大公司的领袖在这100000个银行开户时都存了3大洋,他惜财如命,因此会不时地派小弟GFS清点一些银行的存款或者让GFS改变某个银行的存款。该村子在财产上的求和运算等同于我们的乘法运算,也就是说领袖开户时的存款总和为300000。这里发行的软妹面额是最小的60个

2017-08-17 10:27:58 746

原创 [题解]hdu5306 Gorgeous Sequence

DescriptionThere is a sequence a of length n. We use ai to denote the i-th element in this sequence. You should do the following three types of operations to this sequence.0 x y t: For every x≤i≤y, we

2017-08-17 10:18:09 505

原创 [题解]bzoj3878 AHOI2014 奇怪的计算器

Description【故事背景】 JYY有个奇怪的计算器,有一天这个计算器坏了,JYY希望你能帮助他写一个程序来模拟这个计算器的运算。 【问题描述】 JYY的计算器可以执行N条预设好的指令。每次JYY向计算器输入一个正整数X,计算器就会以X作为初始值,接着依次执行预设的N条指令,最后把最终得出的结果返回给JYY。 每一条指令可以是以下四种指令之一:(这里a表示一个正整数。) 1、+a:表

2017-08-17 10:08:03 592

原创 [题解]codeforces413e Maze 2D

题目:戳这里 题目大意: 给定一个2∗n2*n的地图,某些地方是障碍,只能上下左右走,多组询问两点直接的距离。n≤2∗105n\leq2*10^5Solution线段树维护区间左上到右上、左下到右上、左上到右下、左下到右下的最小距离和区间两端的四个格子是否是障碍即可。合并的时候稍微有点麻烦。代码:#include<cstdio>#include<cstring>#include<algori

2017-08-17 09:59:40 397

原创 [题解]bzoj3600 没有人的算数

Description Solution%%%黄学长代码:#include<cstdio>#include<cstring>#include<algorithm>using namespace std;const int maxn=500010;int n,m,mx[maxn<<2],pos[maxn];double val[maxn];template<typename T>inlin

2017-08-17 09:53:38 389 1

原创 [题解]bzoj4826 HNOI2017 影魔

Description影魔,奈文摩尔,据说有着一个诗人的灵魂。事实上,他吞噬的诗人灵魂早已成千上万。千百年来,他收集了各式各样的灵魂,包括诗人、牧师、帝王、乞丐、奴隶、罪人,当然,还有英雄。每一个灵魂,都有着自己的战斗力,而影魔,靠这些战斗力提升自己的攻击。奈文摩尔有 n 个灵魂,他们在影魔宽广的体内可以排成一排,从左至右标号 1 到 n。第 i个灵魂的战斗力为 k[i],灵魂们以点对的形式为影魔提

2017-08-17 09:43:36 759

原创 [题解]bzoj4540 HNOI2016 序列

Description  给定长度为n的序列:a1,a2,…,an,记为a[1:n]。类似地,a[l:r](1≤l≤r≤N)是指序列:al,al+1,…,ar-1,ar。若1≤l≤s≤t≤r≤n,则称a[s:t]是a[l:r]的子序列。现在有q个询问,每个询问给定两个数l和r,1≤l≤r≤n,求a[l:r]的不同子序列的最小值之和。例如,给定序列5,2,4,1,3,询问给定的两个数为1和3,那么a[

2017-08-17 09:17:54 1331

原创 [题解]bzoj4719 NOIP2016天天爱跑步

Description小c同学认为跑步非常有趣,于是决定制作一款叫做《天天爱跑步》的游戏。?天天爱跑步?是一个养成类游戏,需要玩家每天按时上线,完成打卡任务。这个游戏的地图可以看作一一棵包含 N个结点和N-1 条边的树, 每条边连接两个结点,且任意两个结点存在一条路径互相可达。树上结点编号为从1到N的连续正整数。现在有个玩家,第个玩家的起点为Si ,终点为Ti 。每天打卡任务开始时,所有玩家在第0

2017-08-15 08:27:51 848

原创 [题解]uoj228 基础数据结构练习题

题目大意: 给定一个序列,要求支持区间加、区间开根号、区间求和操作。Solution线段树,我们可以像往常一样判断区间内的数是否都相等,如果相等就直接区间赋值,否则暴力递归下去。但是开根号还有一种特殊情况:3 4 3 4 3 4……开完根号1 2 1 2 1 2……同时加上2又变回了3 4 3 4 3 4……就给一个完全平方数和完全平方数减一的数开根号时得到的结果依然相差一,所以这样就会毫无疑问的

2017-08-15 08:03:57 656

原创 [题解]bzoj4869 SHOI2017相逢是问候

DescriptionInformatikverbindetdichundmich. 信息将你我连结。B君希望以维护一个长度为n的数组,这个数组的下标为从1到n的正整数。一共有m个操作,可以 分为两种:0 l r表示将第l个到第r个数(al,al+1,…,ar)中的每一个数ai替换为c^ai,即c的ai次方,其中c是 输入的一个常数,也就是执行赋值ai=c^ai1 l r求第l个到第r个数的和

2017-08-14 08:41:13 891

原创 [题解]codeforces444c DZY Loves Colors

题目:戳这里 题目大意: 给定一个序列,初始Ai=iA_i=i,区间赋值操作,定义i位置的元素的贡献为该位置元素每次改变的值的绝对值之和,多次询问区间内的元素贡献之和。Solution线段树,区间相同就统一修改,区间不同就暴力递归。注意本题的标记,每次加上新的标记时都会对答案产生贡献,不能只在覆盖标记上修改,还应该记录一下当前区间对答案的贡献作为标记下传。#include<cstdio>#in

2017-08-14 08:21:39 370

原创 [题解]bzoj1493 NOI2007项链工厂

DescriptionT公司是一家专门生产彩色珠子项链的公司,其生产的项链设计新颖、款式多样、价格适中,广受青年人的喜爱。最近T公司打算推出一款项链自助生产系统,使用该系统顾客可以自行设计心目中的美丽项链。该项链自助生产系统包括硬件系统与软件系统,软件系统与用户进行交互并控制硬件系统,硬件系统接受软件系统的命令生产指定的项链。该系统的硬件系统已经完成,而软件系统尚未开发,T公司的人找到了正在参加全国

2017-08-14 08:14:22 490

原创 [题解]bzoj3289 Mato的文件管理

DescriptionMato同学从各路神犇以各种方式(你们懂的)收集了许多资料,这些资料一共有n份,每份有一个大小和一个编号。为了防止他人偷拷,这些资料都是加密过的,只能用Mato自己写的程序才能访问。Mato每天随机选一个区间[l,r],他今天就看编号在此区间内的这些资料。Mato有一个习惯,他总是从文件大小从小到大看资料。他先把要看的文件按编号顺序依次拷贝出来,再用他写的排序程序给文件大小排序

2017-08-12 08:12:10 343

原创 [题解]bzoj2038 小Z的袜子

Description作为一个生活散漫的人,小Z每天早上都要耗费很久从一堆五颜六色的袜子中找出一双来穿。终于有一天,小Z再也无法忍受这恼人的找袜子过程,于是他决定听天由命…… 具体来说,小Z把这N只袜子从1到N编号,然后从编号L到R(L 尽管小Z并不在意两只袜子是不是完整的一双,甚至不在意两只袜子是否一左一右,他却很在意袜子的颜色,毕竟穿两只不同色的袜子会很尴尬。 你的任务便是告诉小Z,他有多大

2017-08-12 08:05:54 481

原创 [题解]bzoj1086 SCOI2005王室联邦

Description  “余”人国的国王想重新编制他的国家。他想把他的国家划分成若干个省,每个省都由他们王室联邦的一个成 员来管理。他的国家有n个城市,编号为1..n。一些城市之间有道路相连,任意两个不同的城市之间有且仅有一条 直接或间接的道路。为了防止管理太过分散,每个省至少要有B个城市,为了能有效的管理,每个省最多只有3B个 城市。每个省必须有一个省会,这个省会可以位于省内,也可以在该省

2017-08-11 23:02:42 461

原创 [题解]bzoj2142 礼物

Description一年一度的圣诞节快要来到了。每年的圣诞节小E都会收到许多礼物,当然他也会送出许多礼物。不同的人物在小E 心目中的重要性不同,在小E心中分量越重的人,收到的礼物会越多。小E从商店中购买了n件礼物,打算送给m个人 ,其中送给第i个人礼物数量为wi。请你帮忙计算出送礼物的方案数(两个方案被认为是不同的,当且仅当存在某 个人在这两种方案中收到的礼物不同)。由于方案数可能会很大,你

2017-08-11 08:37:16 842

原创 [题解]codeforces475d CGCDSSQ

Description题目:戳这里 题目大意: 给定一个序列,询问区间gcd等于x的区间个数。Solution分治,同时用map记录对于x的答案。注意优化时间,合并答案的时候要从中间向两边记录下不同的gcd,相同的就记录个数(最多log个),这样合并是O(n+log22n)O(n+log_2^2n)的,整个复杂度大概是O(nlog2n)O(nlog_2n)的。代码:#include<map>#

2017-08-11 08:27:59 379

原创 [题解]bzoj3295 CQOI2011动态逆序对

Description对于序列A,它的逆序对数定义为满足iInput输入第一行包含两个整数n和m,即初始元素的个数和删除的元素个数。以下n行每行包含一个1到n之间的正整数,即初始排列。以下m行每行一个正整数,依次为每次删除的元素。Output输出包含m行,依次为删除每个元素之前,逆序对的个数。Sample Input5 4 1 5 3 4 2 5 1 4 2Sample Outpu

2017-08-11 08:19:05 354

原创 [题解]bzoj4825 HNOI2017单旋

DescriptionH 国是一个热爱写代码的国家,那里的人们很小去学校学习写各种各样的数据结构。伸展树(splay)是一种数据结构,因为代码好写,功能多,效率高,掌握这种数据结构成为了 H 国的必修技能。有一天,邪恶的“卡”带着他的邪恶的“常数”来企图毁灭 H 国。“卡”给 H 国的人洗脑说,splay 如果写成单旋的,将会更快。“卡”称“单旋 splay”为“spaly”。虽说他说的很没道理,但

2017-08-11 08:11:38 448

原创 [题解]POI2015 Kinoman

Description共有m部电影,编号为1~m,第i部电影的好看值为w[i]。在n天之中(从1~n编号)每天会放映一部电影,第i天放映的是第f[i]部。你可以选择l,r(1<=l<=r<=n),并观看第l,l+1,…,r天内所有的电影。如果同一部电影你观看多于一次,你会感到无聊,于是无法获得这部电影的好看值。所以你希望最大化观看且仅观看过一次的电影的好看值的总和。 输入输出格式Input第一行两

2017-08-11 08:05:27 475

原创 [题解]codeforces498d Traffic Jams in the Land

题目:戳这里Solution线段树每个节点维护60个值,分别是走到该区间左端时时间为i时该区间所用的时间,因为题目中2<=y<=6,2到6的最小公倍数为60,则走过的时间在判断是否堵车是可以mod 60。代码:#include<cstdio>#include<cstring>#include<algorithm>using namespace std;const int maxn=100010

2017-08-11 08:00:32 452

原创 [题解]bzoj4592 SHOI2015脑洞治疗仪

Description曾经发明了自动刷题机的发明家SHTSC又公开了他的新发明:脑洞治疗仪–一种可以治疗他因为发明而日益增大的脑洞的神秘装置。 为了简单起见,我们将大脑视作一个01序列。1代表这个位置的脑组织正常工作,0代表这是一块脑洞。 1 0 1 0 0 0 1 1 1 0 脑洞治疗仪修补某一块脑洞的基本工作原理就是将另一块连续区域挖出,将其中正常工作的脑组织填补在这块脑洞中。 (所以脑

2017-08-11 07:53:44 480

原创 [题解]codeforces 438d The Child and Sequence

Description题目大意: 给出一个长度为 n 的序列AnA_n,有 m 个操作。 1. 给出 k, x,将AkA_k变为x; 2. 给出 l, r, x,将所有的Ai,l≤i≤rA_i, l \leq i \leq r全部变为Ai mod xA_i\ mod \ x; 3. 给出 l, r,询问∑ri=lAi\sum_{i=l}^r A_i 数据范围:n,m≤105n, m \le

2017-07-14 09:05:26 410

原创 [题解]hdu5634 Rikka with Phi

Description题目大意: 给出一个长度为 n 的序列AnA_n,有 m 个操作。 1. 给出 l, r,将所有的Ai,l≤i≤rA_i, l \leq i \leq r全部变为ϕ(Ai)\phi(A_i); 2. 给出 l, r, x,将所有的Ai,l≤i≤rA_i, l \leq i \leq r全部变为x; 3. 给出 l, r,询问∑ri=lAi\sum_{i=l}^r A_i

2017-07-13 13:11:21 398

原创 [题解]bzoj2957 楼房重建

Description  小A的楼房外有一大片施工工地,工地上有N栋待建的楼房。每天,这片工地上的房子拆了又建、建了又拆。他经常无聊地看着窗外发呆,数自己能够看到多少栋房子。   为了简化问题,我们考虑这些事件发生在一个二维平面上。小A在平面上(0,0)点的位置,第i栋楼房可以用一条连接(i,0)和(i,Hi)的线段表示,其中Hi为第i栋楼房的高度。如果这栋楼房上任何一个高度大于0的点与(0,0)

2017-07-13 12:56:24 484

原创 [题解]codeforces 339d Xenia and Bit Operations

Description题目大意: 给你2n2^n个数,更新其中的某个值,交替对这些数进行“或操作”和“异或操作”,每次得到最终的结果。Solution线段树模拟就好了,每次单点修改,每层节点用bool变量记录下是该进行“或操作”还是“异或操作”。 代码:#include<cstdio>#include<algorithm>using namespace std;template<typena

2017-07-13 12:05:06 446

原创 [题解]codeforces 280d k-Maximum Subsequence Sum

Discription题目大意: 给出一个长度为 n 的序列 An{A_n}, m 次操作, 操作有如下两种: 1. 给出 i,val, 把 AiA_i 变成 val。 2. 给出 l,r,k, 询问把区间 [l, r] 划分成不超过 k 个不相交的区间,这些区间中数的和的最大值。区间可以不满k个,也可以一个数都不取。 数据范围:n,m≤105,k≤20n, m\leq10^5 , k\le

2017-07-13 11:50:17 677

原创 [题解]codeforces 718c Sasha and Array

Description题目大意: 给定一个长度为N的序列An{A_n},要求支持区间加、区间求∑f(Ai)\sum f(A_i),其中f(i)f(i)表示斐波那契数列第i项。 N≤100000N\leq 100000Solution线段树,把斐波那契数列的转移矩阵作为标记,每次区间乘上转移矩阵的几次方即可。注意不能标记永久化,因为矩阵乘法不符合交换律。 代码:#include<cstdio>

2017-07-12 17:30:15 328

原创 [题解]bzoj4034 树上操作

Description有一棵点数为 N 的树,以点 1 为根,且树点有边权。然后有 M 个 操作,分为三种: 操作 1 :把某个节点 x 的点权增加 a 。 操作 2 :把某个节点 x 为根的子树中所有点的点权都增加 a 。 操作 3 :询问某个节点 x 到根的路径中所有点的点权和。Input第一行包含两个整数 N, M 。表示点数和操作数。接下来一行 N 个整数,表示树中节点的初始权值。接

2017-07-12 17:21:54 345

原创 [题解]bzoj3600 没有人的算数

Solution就是线段树,最麻烦的地方就是比较两个数的大小。 我们可以想到给每个数映射到一个double值,但是double的精度有限,如果数太多就会挂掉。所以我们可以用平衡树维护。但是插入的时候还是有比较大小的问题。 注意到新数由原来的数生成,所以原来的数在平衡树中的大小可以用来进行比较。我们可以把每一个平衡树中的节点对应区间(l,r),然后他的左孩子对应(l,mid) ,

2017-07-11 10:40:17 356

空空如也

空空如也

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

TA关注的人

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