自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 分块模板题 Libre oj 6280. 数列分块入门 4

分块算法,作为一个根号算法,如果数据超过了5e5基本就不要考虑了,而在1e5左右,跑起来速度是很快的,如果你学过线段树,理解起来分块就会很简单,对于不同的维护问题,我们只需要对区间进行不同的维护就可以,比如此题b数组就相当于一个lazy tag,代码如下。#include<bits/stdc++.h>using namespace std;#define int long long #define INF 0x3f3f3f3f3f3f3f3ftypedef pair<int,i.

2021-11-08 09:41:46 295

原创 普通平衡树(平衡树模板)有旋treap

普通线段树题目描述您需要写一种数据结构(可参考题目标题),来维护一些数,其中需要提供以下操作:插入x数删除x数(若有多个相同的数,因只删除一个)查询x数的排名(若有多个相同的数,因输出最小的排名)查询排名为x的数求x的前驱(前驱定义为小于x,且最大的数)求x的后继(后继定义为大于x,且最小的数)输入描述第一行为n,表示操作的个数,下面n行每行有两个数opt和x,opt表示操作的序号输出描述对于操作3,4,5,6每行输出一个数,表示对应答案题解平衡树的板子题,实际上感觉就是实现了下

2021-10-29 15:00:50 195

原创 智乃的直线(李超线段树模板题)

智乃的直线好久不写题解了,分享下最近学习的数据结构李超线段树,个人感觉跟普通线段树区别不大,只是维护的信息是线段,重点是每个节点维护的线段为:1.在中点处该线段取值最大。2.线段的定义域大于区间的范围。题目链接https://ac.nowcoder.com/acm/contest/19917/A代码在这里插入代码片...

2021-10-29 10:03:24 242

原创 Codeforces Round #681 (Div. 2, based on VK Cup 2019-2020 - Final) (A B C D)

昨天打了一场Div 2,做了三题吧,赛后补了D,前四题都是思维题没什么算法,赛后跟群友讨论了下思路,感觉自己的方法都比较笨吧,再来梳理梳理思路,(其实总感觉自己打cf以及atcoder有的时候是乱搞出来的,自己不能给别人讲的很明白,还是慢慢练吧…毕竟自己思维一直不好)A题题解:感觉算是一个性质吧,就是如果我们找到一个n>=2的数,从这个数到2*n-2,这些数全部都是不能互相除尽的。代码#include<bits/stdc++.h>using namespace std;cons

2020-11-03 18:12:55 283

原创 Codeforces Round 677 (Div. 3) ABCDEFG题解

呜呜,前两天晚上网炸了,错过了一波上分的机会,可能这次div3的题自己做着顺手吧,算是赛后补完了吧,(主要是F是最近刚在刷的线性dp,闫氏dp好,G题是个最短路思维题)A题题解:没啥好说的吧,一组是十位,然后分情况暴力就行了。B题思路:我的思路是记录下每个1和前一个1之间零的个数,然后求和,为什么这样想的呢?我们可以这样想,我们想让所有的1相邻,肯定是从第二个1开始往前移动吧,那我们可以想到,其实前面的1移动是不会影响后面1的相对位置的,即:我们移动第二个1,那么第三个1和第二个1相对位置是不会变的

2020-10-23 15:10:02 191

原创 Educational Codeforces Round 96 (Rated for Div. 2) ABCD

很久不写题解了 因为最近一直在刷acwing和kuangbin的专题 acwing题解直接在acwing上传了 而kuangbin做了几个半个专题 完整了会写题解的因为身体原因最近总是眼睛疼所以很少熬夜了,cf打的少了 atcoder的题比较基础也没怎么发 昨天打了一场cf edu场 打了ABC 赛后补了D E题看题解是树状数组 还不是很熟练就没有补 暂且先是ABCD吧A:当时本来想找规律,最后还是用的暴力枚举,但是赛后看了看其实大部分人用的也是暴力(果然暴力出奇迹#include<bits/

2020-10-12 18:40:38 248

原创 7-2 输入合法性判断+素数判断 (10分)C++

实现isPrime()函数,参数为整数,要有异常处理。如果整数是素数,返回True,否则返回False。输入格式:输入一个数输出格式:如果整数是素数,输出"是素数", 否则输出"不是素数"; 如果输入不满足要求,输出"输入错误"。输入样例:在这里给出一组输入。例如:11输出样例:在这里给出相应的输出。例如:是素数注释我是菜鸡,上学期C++异常没学好,用了个字符串,ac了。#include<iostream>#include<math.h>#include

2020-09-10 13:57:52 1743 4

原创 HDU 1272小希的迷宫(并查集)

Problem Description上次Gardon的迷宫城堡小希玩了很久(见Problem B),现在她也想设计一个迷宫让Gardon来走。但是她设计迷宫的思路不一样,首先她认为所有的通道都应该是双向连通的,就是说如果有一个通道连通了房间A和B,那么既可以通过它从房间A走到房间B,也可以通过它从房间B走到房间A,为了提高难度,小希希望任意两个房间有且仅有一条路径可以相通(除非走了回头路)。小希现在把她的设计图给你,让你帮忙判断她的设计图是否符合她的设计思路。比如下面的例子,前两个是符合条件的,但是最后

2020-08-26 19:40:25 344

原创 HDU-1213 How Many Tables(简单并查集)

Problem DescriptionToday is Ignatius’ birthday. He invites a lot of friends. Now it’s dinner time. Ignatius wants to know how many tables he needs at least. You have to notice that not all the friends know each other, and all the friends do not want to st

2020-08-25 20:45:25 139

原创 HDU-3342 Legal or Not (拓扑排序)

Problem DescriptionACM-DIY is a large QQ group where many excellent acmers get together. It is so harmonious that just like a big family. Every day,many “holy cows” like HH, hh, AC, ZT, lcc, BF, Qinz and so on chat on-line to exchange their ideas. When so

2020-08-24 20:32:49 152

原创 HDU-2094 产生冠军(拓扑排序)

Problem Description有一群人,打乒乓球比赛,两两捉对撕杀,每两个人之间最多打一场比赛。球赛的规则如下:如果A打败了B,B又打败了C,而A与C之间没有进行过比赛,那么就认定,A一定能打败C。如果A打败了B,B又打败了C,而且,C又打败了A,那么A、B、C三者都不可能成为冠军。根据这个规则,无需循环较量,或许就能确定冠军。你的任务就是面对一群比赛选手,在经过了若干场撕杀之后,确定是否已经实际上产生了冠军。Input输入含有一些选手群,每群选手都以一个整数n(n<1000)开

2020-08-24 19:08:42 152

原创 HDU-1285 确定比赛名次(拓扑排序)

Problem Description有N个比赛队(1<=N<=500),编号依次为1,2,3,。。。。,N进行比赛,比赛结束后,裁判委员会要将所有参赛队伍从前往后依次排名,但现在裁判委员会不能直接获得每个队的比赛成绩,只知道每场比赛的结果,即P1赢P2,用P1,P2表示,排名时P1在P2之前。现在请你编程序确定排名。Input输入有若干组,每组中的第一行为二个数N(1<=N<=500),M;其中N表示队伍的个数,M表示接着有M行的输入数据。接下来的M行数据中,每行也有两个整数

2020-08-23 20:17:28 151

原创 Educational Codeforces Round 89 (Rated for Div. 2)题解 A B C

昨晚网络贼卡 开始十分钟才进去,然后昨晚A题,B题等了半天也打不开,就去睡觉了,今天早上来补题(掉分预警)之前还没怎么打过教育场,因为自己比较菜,所以就补四道吧…A. Shovels and Swordstime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputPolycarp plays a well-known computer game (we

2020-06-14 10:51:10 281

原创 1818:红与黑

1818:红与黑查看 提交 统计 提问总时间限制: 1000ms 内存限制: 65536kB描述有一间长方形的房子,地上铺了红色、黑色两种颜色的正方形瓷砖。你站在其中一块黑色的瓷砖上,只能向相邻的黑色瓷砖移动。请写一个程序,计算你总共能够到达多少块黑色的瓷砖。输入包括多个数据集合。每个数据集合的第一行是两个整数W和H,分别表示x方向和y方向瓷砖的数量。W和H都不超过20。在接下来的H行中,每行包括W个字符。每个字符表示一块瓷砖的颜色,规则如下1)‘.’:黑色的瓷砖;2)‘#’:白色的瓷砖;

2020-05-24 09:14:05 298

原创 A - Knight Moves

917:Knight Moves查看 提交 统计 提问总时间限制: 1000ms 内存限制: 65536kB描述BackgroundMr Somurolov, fabulous chess-gamer indeed, asserts that no one else but him can move knights from one position to another so fast. Can you beat him?The ProblemYour task is to write a

2020-05-24 09:09:36 319

原创 畅通工程续 HDU-1874

畅通工程续Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 87942 Accepted Submission(s): 33937Problem Description某省自从实行了很多年的畅通工程计划后,终于修建了很多路。不过路多了也不好,每次要从一个城镇到另一个城镇时,都有许多种道路方案可以选择,而某些方案要比另一些方案行走的距离要短

2020-05-13 22:45:41 170

原创 B - 最短路径·二:Floyd算法

描述万圣节的中午,小Hi和小Ho在吃过中饭之后,来到了一个新的鬼屋!鬼屋中一共有N个地点,分别编号为1…N,这N个地点之间互相有一些道路连通,两个地点之间可能有多条道路连通,但是并不存在一条两端都是同一个地点的道路。由于没有肚子的压迫,小Hi和小Ho决定好好的逛一逛这个鬼屋,逛着逛着,小Hi产生了这样的问题:鬼屋中任意两个地点之间的最短路径是多少呢?提示:其实如果你开心的话,完全可以从每个节点开始使用Dijstra算法_(:з」∠)。×Close提示:其实如果你开心的话,完全可以从每个节点开始使

2020-05-13 21:10:44 354

原创 P1873 砍树

题目描述伐木工人米尔科需要砍倒M米长的木材。这是一个对米尔科来说很容易的工作,因为他有一个漂亮的新伐木机,可以像野火一样砍倒森林。不过,米尔科只被允许砍倒单行树木。米尔科的伐木机工作过程如下:米尔科设置一个高度参数H(米),伐木机升起一个巨大的锯片到高度H,并锯掉所有的树比H高的部分(当然,树木不高于H米的部分保持不变)。米尔科就行到树木被锯下的部分。例如,如果一行树的高度分别为20,15,10和17,米尔科把锯片升到15米的高度,切割后树木剩下的高度将是15,15,10和15,而米尔科将从第1棵树得

2020-05-13 10:17:59 275

原创 P1102 A-B 数对

题目描述出题是一件痛苦的事情!相同的题目看多了也会有审美疲劳,于是我舍弃了大家所熟悉的 A+B Problem,改用 A-B 了哈哈!好吧,题目是这样的:给出一串数以及一个数字 CC,要求计算出所有 A - B = CA−B=C 的数对的个数(不同位置的数字一样的数对算不同的数对)。输入格式输入共两行。第一行,两个整数 N, CN,C。第二行,NN 个整数,作为要求处理的那串数。输出格式一行,表示该串数中包含的满足 A - B = CA−B=C 的数对的个数。输入输出样例输入 #1 复

2020-05-13 09:37:27 335

原创 P2249 【深基13.例1】查找

展开题目描述输入 n(n\le10^6)n(n≤106) 个不超过 10^9109的单调不减的(就是后面的数字不小于前面的数字)非负整数 a_1,a_2,\dots,a_{n}a1​ ,a2​ ,…,an​ ,然后进行 m(m\le10^5)m(m≤105) 次询问。对于每次询问,给出一个整数 q(q\le10^9)q(q≤109),要求输出这个数字在序列中的编号,如果没有找到的话输出 -1 。输入格式第一行 2 个整数 n 和 m,表示数字个数和询问次数。第二行

2020-05-12 10:26:28 1241

原创 P1135 奇怪的电梯

题目描述呵呵,有一天我做了一个梦,梦见了一种很奇怪的电梯。大楼的每一层楼都可以停电梯,而且第ii层楼(1 \le i \le N)(1≤i≤N)上有一个数字K_i(0 \le K_i \le N)Ki​ (0≤Ki​ ≤N)。电梯只有四个按钮:开,关,上,下。上下的层数等于当前楼层上的那个数字。当然,如果不能满足要求,相应的按钮就会失灵。例如:3, 3 ,1 ,2 ,53,3,1,2,5代表了K_i(K_1=3,K_2=3,…)Ki​ (K1​ =3,K2​ =3,…),从1

2020-05-11 17:24:04 245

原创 P1443 马的遍历

题目描述有一个n*m的棋盘(1<n,m<=400),在某个点上有一个马,要求你计算出马到达棋盘上任意一个点最少要走几步输入格式一行四个数据,棋盘的大小和马的坐标输出格式一个n*m的矩阵,代表马到达某个点最少要走几步(左对齐,宽5格,不能到达则输出-1)输入输出样例输入 #1 复制3 3 1 1输出 #1 复制0 3 23 -1 12 1 4经典BFS#include<iostream>#include<string

2020-05-11 15:27:53 105

原创 P1219 [USACO1.5]八皇后 Checker Challenge

题目描述一个如下的 6 \times 66×6 的跳棋棋盘,有六个棋子被放置在棋盘上,使得每行、每列有且只有一个,每条对角线(包括两条主对角线的所有平行线)上至多有一个棋子。上面的布局可以用序列 2\ 4\ 6\ 1\ 3\ 52 4 6 1 3 5 来描述,第 ii 个数字表示在第 ii 行的相应位置有一个棋子,如下:行号 1\ 2\ 3\ 4\ 5\ 61 2 3 4 5 6列号 2\ 4\ 6\ 1\ 3\ 52 4 6 1 3 5这只是棋子放置的一个解。请编一个程序找出所有棋子放置的解。

2020-05-09 11:24:43 191

原创 洛谷 P1784 数独

题目描述数独是根据9×9盘面上的已知数字,推理出所有剩余空格的数字,并满足每一行、每一列、每一个粗线宫内的数字均含1-9,不重复。每一道合格的数独谜题都有且仅有唯一答案,推理方法也以此为基础,任何无解或多解的题目都是不合格的。芬兰一位数学家号称设计出全球最难的“数独游戏”,并刊登在报纸上,让大家去挑战。这位数学家说,他相信只有“智慧最顶尖”的人才有可能破解这个“数独之谜”。据介绍,目前数独...

2020-05-08 16:56:50 243

原创 7-1 录入学生成绩并统计及格人数、不及格人数及平均分 (50分)----c++综合实验

定义学生类Student,其数据成员有:学号、成绩(整型数据)及若干成员函数。编写一个程序进行一个班某门课程成绩的录入,能够控制录入成绩总人数,对录入成绩统计其及格人数、不及格人数及该班的平均分。 要求: 1、学号可自动生成,学号从200001开始; 2、通过成员函数setScore(int s)设置成绩值,当成绩小0分或大于100分时,抛出异常; 3、主函数中读入要录入成绩的总人数N及N个学生的...

2020-05-07 09:01:04 5906 2

原创 Codeforces Round #636 (Div. 3)C. Alternating Subsequence

C. Alternating Subsequencetime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputRecall that the sequence b is a a subsequence of the sequence a if b...

2020-04-22 08:49:53 254

原创 Codeforces Round #636 (Div. 3)B. Balanced Array

B. Balanced Arraytime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputYou are given a positive integer n, it is guaranteed that n is even (i.e. div...

2020-04-22 08:47:14 427

原创 Codeforces Round #636 (Div. 3)A. Candies

A. Candiestime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputRecently Vova found n candy wrappers. He remembers that he bought x candies during t...

2020-04-22 08:43:38 489

原创 B - Sorted Adjacent Differences CodeForces - 1339B

You have array of n numbers a1,a2,…,an.Rearrange these numbers to satisfy |a1−a2|≤|a2−a3|≤…≤|an−1−an|, where |x| denotes absolute value of x. It’s always possible to find such rearrangement.Note tha...

2020-04-20 10:53:55 235

原创 A - Filling Diamonds CodeForces - 1339A

You have integer n. Calculate how many ways are there to fully cover belt-like area of 4n−2 triangles with diamond shapes.Diamond shape consists of two triangles. You can move, rotate or flip the sha...

2020-04-20 10:52:04 331

原创 7-1 两个时间相加 (10分)

时间类Time的参考框架如下,通过重载操作符“+”实现两个时间的相加,要求将小时范围限制在023时,分钟范围限制在059分,秒钟范围限制在0~59秒。设计主程序,读入两个时间,对时间的合法性进行判断,若时间不合法,则输出“Time Error!”,若时间值合法,则进行两个时间的相加,并将结果以:“小时:分钟:秒”的格式进行输出。class Time{public:Time(int h=0,...

2020-04-14 14:03:53 972

原创 7-5 时间换算(运算符重载) (20分)

定义一个时间类Time,内有私有数据成员:hour,minute,second,另有成员函数:构造函数用于初始化数据成员,输出函数,运算符重载+(加号),。编写主函数:创建时间对象,再输入秒数 n,通过运算符重载+(加号),计算该时间再过 n 秒后的时间值,时间的表示形式为:时:分:秒,超过 24 时从 0 时重新开始计时。 测试输入包含若干测试用例,每个测试用例占一行。当读入0 0 0 0时输入...

2020-04-13 11:58:05 1397

原创 7-3 计算时间相减 (30分)

题目描述:定义一个时间类,小时和分钟是其两个私有成员数据。输入一个起始时间和一个结束时间(起始时间早于结束时间),通过运算符重载-(减号),计算这两个时间相隔多少分钟。说明:这两个时间在同一天之内,且采用24小时计时分式,即从00:00-23:59。输入格式:测试输入包含若干测试用例,每个测试用例占一行。每个测试用例包括四个数,用空格间隔,每个数都是由两位数字组成,第一个数和第二个数分别表示...

2020-04-13 11:57:08 1127

原创 7-2 复数计算 (10分)

定义复数类Complex,并重载运算符:+、-、-=,使复数类对象完成相应的运算。 根据以下代码段,完善??处的内容及程序内容,以实现规定的输出。class Complex{public:Complex(double r=0, double i=0):real®, imag(i){ }Complex operator+( ?? ) ; //重载双目运算符’+’...

2020-04-13 11:55:49 2446

原创 7-1 复数的比较 (30分)

7-1 复数的比较 (30分)题目描述:建立一个复数类,实数和虚数是其私有数据成员。建立一个>(大于号)的运算符重载,比较两个复数间模的大小。输入格式:测试输入包含若干测试用例,每个测试用例占一行。每个测试用例包括四个数字,前两个数字分别表示第一个复数的实部和虚部,第三个和第四个数字分别表示第二个复数的实部和虚部。每个数字之间用空格间隔。当读入一个测试用例是0 0 0 0时输入结束,...

2020-04-13 11:54:36 4025 2

原创 (java学习)泛型类

泛型类的特点1.如果不指定泛型,默认为object2.泛型不同的同一类的对象不能相互赋值代码展示public class test20 { public static void main(String[]args) { class Name<T> { private T Xing; public void setXi...

2020-04-06 09:00:35 199

原创 (java学习)HashSet

1. HashSet的特点1.不能保证元素的排列顺序2.不可重复3.HashSet不是线程安全的4.集合元素可以使用null注意:判断两个元素是否相等 看他们Hashcode是否相等2. 实现HashSet1.引包2.HashSet是继承了Set接口3.具体功能函数:1.添加元素2.清除元素3.清空集合4.判断一个元素是否在集合中5.遍历HashSet6.控制元素的类...

2020-04-04 10:55:24 162

原创 (java学习)异常

什么是异常?异常就是java程序在运行时出现的不正常的情况异常的具体分类:我们能解决的是exception类型的异常其中常见的几种异常:1.数组越界2.空指针异常3.除数是0异常如何处理异常?利用catch throw finally1.异常的捕捉用catch(Exception e){} 中括号中是出现异常的代码块用e.printStarkTrace()显示...

2020-04-01 07:51:48 115

原创 7-2 利用继承,求三角形及矩形面积 (10分)

给出下面的基类,要求: (1)建立基类Area的俩个派生类Rectangle(矩形)与Isosceles(三角形),让每一个派生类都包含一个函数getArea(),分别用来返回矩形与三角形的面积。用构造函数对height与width进行初始化。 (2)写出主程序,从键盘读入矩形的长和宽及三角形的底和高,输出矩形及三角形的面积。class Area{ double height;doub...

2020-03-31 19:57:59 1418

原创 7-1 显示小孩的出生时间和姓名 (10分)

题目叙述:已有类Time和Date,要求设计一个派生类Birthtime,它继承类Time和Date,并且增加一个数据成员Childname,用于表示小孩的名字,同时设计主程序,输入2个小孩的姓名、出生日期,并将这两个小孩的姓名、出生日期输出。class Time{public:Time(int h,int m,int s){hours=h;minutes=m;seconds=s...

2020-03-31 19:44:49 1373 2

空空如也

空空如也

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

TA关注的人

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