自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 蓝桥杯算法总结

1)归并排序:#include<bits/stdc++.h>#define ll long longconst ll nl=1e5+5;using namespace std;ll n;ll a[nl];ll q[nl];void f(ll l,ll r){ if(l>=r){ return; } ll mid; mid=(l+r)/2; f(l,mid); f(mid+1,r); ll i=l,j=mid+1,k=0; while(i<=mid&

2022-04-07 11:15:25 1229

原创 字符串小节

将字符串(2 3 4 5)转化成数组:while(cnt--){ getline(cin,line); stringstream ssin(line); while(ssin>>a[n]){ n++; } }

2022-04-06 20:22:46 127

原创 dp小总结

1)01背包问题(https://www.acwing.com/problem/content/2/)//二维代码:#include<bits/stdc++.h>#define ll long longconst ll nl=1e3+5;using namespace std;//不用赋初值,从0个物品中选体积不超过j或者从i个物品中选体积不超过0,最大价值就是0 ll f[nl][nl];//从前i个里面选,体积不超过j的最大价值//状态计算f[i][j]=f[i-1][j]+

2022-04-02 22:57:10 422

原创 c++输入总结

stringstream用法:ll cnt;cin>>cnt;string line;// getline(cin,line); // 忽略掉第一行的回车getchar();//忽略掉第一行的回车while (cnt – ){getline(cin, line);//输入一行字符串:5 7 8 9stringstream ssin(line);while (ssin >> a[n]) n++ ;//相当于输入一个个单词,会自动将一个个单词转化为数字}...

2022-03-06 16:57:18 406

原创 2021.8.21补题报告

B. Preparing Olympiad题目大意:在一些数里面选择至少两个数,它们的和>l并且<r,并且他们最大值最小值的差至少大于x。思路:枚举全部的情况,共有2的n次方-1种,如何确定选择的是哪个情况呢,运用与运算即可。#include<bits/stdc++.h>using namespace std;#define ll long longconst ll nl=1e5+5;ll a[nl];int main(){ ll n,l,r,x; cin>

2021-08-22 11:44:18 76

原创 二分法应用

链接:https://ac.nowcoder.com/acm/contest/18453/G来源:牛客网题目描述Ann Logan is fascinated with finite sequences of integers. She is particularly interested in sequences of the form x1, x2, . . . , xn where:• xi = (axi−1 + c) mod m,• n, m, a, and c are positive

2021-07-23 09:56:14 147

原创 双索引应用(直接硬做,遍历整个过程,开始,下一个,重排)

链接:https://ac.nowcoder.com/acm/contest/18453/F来源:牛客网题目描述Professor O’Dagio of the music department at Faber College has come up with a rather interesting way of selecting its department chair. All n members of the music faculty line up, then the first on

2021-07-23 09:46:46 208

原创 求最小素因子1e18

Sum of a Function题解:求区间内规定区间所有数的最小素因子的和,遍历一遍数据,再接一层循环(2,281)即可。#include<bits/stdc++.h>#define LL long longusing namespace std;const int maxn=1e6+10;LL a[maxn],idx;int main(){ LL s,e,k,ans=0; cin>>s>>e>>k; for(LL i

2021-07-21 14:24:31 252

原创 运用顺序进行,求每一个元素(包含其之前的所有元素)贡献

链接:https://ac.nowcoder.com/acm/contest/18428/C来源:牛客网Arup has to make many practice questions for his Computer Science 1 students. Since many of the questions deal with arrays, he has to generate arrays for his students. Since he doesn’t want to give them

2021-07-21 11:26:34 132 1

原创 快速幂(快速乘底数n次幂)运用

将指数分成二进制形式,然后将所求分开,即2^8=2的(1+2+4)次幂求a的b次幂取模:题解:运用快速幂+二进制#include<bits/stdc++.h>using namespace std;#define ll long longconst ll nl=1e5+5;ll p=2333;ll qumo(ll a,ll b){ ll tmp=a; ll ans=1; while(b){ if(b&1==1){ ans=tmp*ans%p; }

2021-07-19 11:37:43 104

原创 贪心的应用

贪心算法(又称贪婪算法)是指,在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,算法得到的是在某种意义上的局部最优解 。链接:https://ac.nowcoder.com/acm/problem/24867来源:牛客网题目描述Each of Farmer John’s N (1 <= N <= 50,000) cows likes to graze in a certain part of the pasture, which can be though

2021-07-19 08:46:48 91

原创 递归的应用

典型运用递归解决问题,要想解决递归,更好的理解递归,就要学会放弃理解和跟踪递归全程的企图,真正用递归地思想去解决问题,只理解递归两层之间的交接,以及递归终结的条件。汉诺塔问题:典型例题,从三个盘子的汉诺塔问题入手,根据次类推,发现实现这个问题,只需要三步:假设共有n个盘子将n-1个盘子由x->z->y将第n个盘子由x->z将n-1个盘子由y->x->z所以递归去做即可#include<bits/stdc++.h>using namespace std

2021-07-19 08:46:06 99

原创 枚举/前缀和/差分/

链接:https://ac.nowcoder.com/acm/problem/20032来源:牛客网题目描述一种新型的激光炸弹,可以摧毁一个边长为R的正方形内的所有的目标。现在地图上有n(N ≤ 10000)个目标,用整数Xi,Yi(其值在[0,5000])表示目标在地图上的位置,每个目标都有一个价值。激光炸弹的投放是通过卫星定位的,但其有一个缺点,就是其爆破范围,即那个边长为R的正方形的边必须和x,y轴平行。若目标位于爆破正方形的边上,该目标将不会被摧毁。输入描述:输入文件的第一行为正整数

2021-07-16 20:57:09 164

原创 复习计划1

离散数学 课后题android 课后题数据库 课后题毛概 背,别偷懒这个先不急操作系统 不知道linux 不知道英语 不复习

2021-06-22 19:11:58 175

原创 动态规划专题(找子问题+自下而上)

动态规划算法的核心就是记住已经解决过的子问题的解。对问题的求解,其实就是对子问题自底向上的计算过程。学会动态规划重点是搞清楚递归的作用。第一步:找到子问题。A - 滑雪Michael喜欢滑雪百这并不奇怪, 因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。Michael想知道载一个区域中最长底滑坡。区域由一个二维数组给出。数组的每个数字代表点的高度。下面是一个例子1 2 3 4 516 17 18 19 615 24 2

2021-06-17 19:47:33 533

原创 个人之后参赛打算

1.蓝桥杯(官网:http://dasai.lanqiao.cn/pages/dasai/index.html)今年9到12月份可以报名,次年3月参赛,目标省赛1等奖,国家3-2等奖,最起码国三。2.PAT(计算机程序设计能力考试,官网:https://www.patest.cn/)每年三次,可以先参加乙级,再考虑甲级。3.CCF CSP(CCF计算机软件能力认证,官网:http://www.cspro.org/)每年三次***(较为重要)4.GPLT 团体程序设计天梯赛(官网:https://

2021-06-08 20:27:06 141

原创 2021.6.5个人赛补题

本次比赛发挥较好,最后靠运气过了一个题,有点刺激(嘿嘿),平常多动脑,比赛时就少了些急躁。c题:CodeForces - 157C题解:C题被翻译搞得有点迷。。。一开始以为是任意位置插入字母,后来才明白是只能首尾插入字母,这样题目就很明确了,就是比较两字符传连续相等的字母有多少即可。可以在a字母首尾加上b字符串长度的空字符串,然后从头到尾与b字符比较;另一种思路是比较两次,一次以a字符串为参照,一次以b字符串为参照。b字符串的尾可能等于a字符串的头,b字符串的头可能等于a字符串的尾。#includ

2021-06-07 15:01:59 81

原创 2021.5.29比赛补题报告三角函数+模拟+前缀和

★★比赛新机制★★最近,AllenAllen 教授研发了一种新的比赛机制,这种比赛机制是 ACPCACPC (Asia ; Collegiate ; Programming ; Contest)(AsiaCollegiateProgrammingContest) 赛制的扩展,简称 AUPCAUPC (Asia ; University ; Programming ; Contest)(AsiaUniversityProgrammingContest)。参赛者为个人参赛(即每人一台电脑),且成绩分为两部分

2021-06-02 19:18:07 264 2

原创 字符串总结

A - Power StringsGiven two strings a and b we define ab to be their concatenation. For example, if a = “abc” and b = “def” then ab = “abcdef”. If we think of concatenation as multiplication, exponentiation by a non-negative integer is defined in the norma

2021-05-31 21:08:38 110

原创 2021.5.22比赛补题

本次比赛发挥较好,完成了ABC三个题,这对自己是个鼓励,望下继续努力,其实cf的题并不是难,代码操作量一般不大,更多是对思维的训练。比的就是对问题本质发现速度。补一下c题:One day little Vasya found mom’s pocket book. The book had n names of her friends and unusually enough, each name was exactly m letters long. Let’s number the names fro

2021-05-24 21:53:03 124

原创 codeforce补题记录

B2. Palindrome Game (hard version)The only difference between the easy and hard versions is that the given string s in the easy version is initially a palindrome, this condition is not always true for the hard version.A palindrome is a string that reads

2021-05-24 21:15:48 362

原创 模拟(后续更新)

C. Berland Regional(模拟+vector优化)Polycarp is an organizer of a Berland ICPC regional event. There are n universities in Berland numbered from 1 to n. Polycarp knows all competitive programmers in the region. There are n students: the i-th student is enroll

2021-05-20 08:51:29 189

原创 dp专题(后续更新)

D. Maximum Sum of Productstime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputYou are given two integer arrays a and b of length n.You can reverse at most one subarray (continuous subsegment) of the a

2021-05-18 20:34:37 130 2

原创 2021.5.15实验室个人赛补题报告

本次比赛难度感觉适中,题目容易理解,但是不好操作,坑有些多,多加练习。明显感觉代码能敲,算法也不是很难,但是情况太多,容易漏测试点。c题:CodeForces 151Cc题当时没时间做了,看看题意,比较别扭,读题这一光没完全过去,敲得也不自信,题意:题中两个人玩游戏,给定一个数n,每次找非平凡数(即不是一也不是它本身的因子),要求判断谁赢,如果一赢了要输出第一个非平凡数。一开始用正向思维,直接写函数,从数中找因子,结果发现很麻烦,而且过不去,后来直接从因子开始,要想一赢,那么一定存在一个非平凡数,其后的

2021-05-17 23:58:20 113 1

原创 2021-05-12

L2-038 病毒溯源 (25 分)病毒容易发生变异。某种病毒可以通过突变产生若干变异的毒株,而这些变异的病毒又可能被诱发突变产生第二代变异,如此继续不断变化。现给定一些病毒之间的变异关系,要求你找出其中最长的一条变异链。在此假设给出的变异都是由突变引起的,不考虑复杂的基因重组变异问题 —— 即每一种病毒都是由唯一的一种病毒突变而来,并且不存在循环变异的情况。输入格式:输入在第一行中给出一个正整数 N(≤10​4​​ ),即病毒种类的总数。于是我们将所有病毒从 0 到 N−1 进行编号。随

2021-05-12 09:27:14 143

原创 天梯赛总结

本次天梯赛是自己最认真对待的一场学习型竞赛,从大一到大二感觉就干了这一件人事(想想从前在王者峡谷浪费的时光还是有些心痛,不过如果从新来过,我可能还是会同样的选择,所以过去的时光就随它去呗,最重要的是把握好现在喝未来)。经历过此次天梯赛,我收获良多,虽然没有拿到很高的奖励,但是不管从心智还是能力都相较之前成长了不少。 emmmm,总结一下自己的收获呗。反正也是写给自己看的,随便写写就行(嘿嘿)。首先,自己养成了写博客的好习惯,天梯赛准备阶段经常会连练习题目,遇到不会的题,新的思路或者新学的算法都会...

2021-04-26 15:45:36 666

原创 2021天梯赛总结

本次是自己第一次参加天梯赛,拿了145分,分数有些拉跨,不过也算是对得起自己的努力了。赛前也做了很多准备,将题库里的题l2难度的几乎都手动敲了一遍。准备比赛的过程中也确实提高了自己的能力,什么dfs,并查集,sort排序,结构体排序,链表,这些曾经望而莫及的算法,都做了了解,并用到题目中。本次比赛收获良多,从心态到能力,都得到了历练。本次比赛也有一些比较遗憾的地方。比如:在l1最后一题卡了较长时间,l2第三个忘记结构体可以套数组,以及最后一个l2的题没有勇气去做一做,后来想想其实难度不是想象的那样大。

2021-04-25 19:53:16 2321 5

原创 dfs和并查集小结(后续更新)

并查集和dfs有点相像,都是但是个人认为并查集偏向找点,最终目的是归为点(祖先)而dfs偏向找层,层层递归,找到我们需要的数据。前者偏向结果,后者偏向过程。并查集:不了解并查集的话可以做一做pta中"部落"那个题,用到了并查集知识,属于比较基础的。并查集基本结构:void init(){//p[x]代表x的父节点,初始时可以先将节点的父节点指向自己。 for(ll i=0;i<nl;i++){ p[i]=i; } } ll find(ll x){//找祖先节点,即父节点指向自己的点

2021-04-22 16:53:56 529

原创 链表总结--L2-002 链表去重 (25 分)/

链表题一般就是结合结构体存数据,再根据题目要求输出即可。注意:题目中可能给出多个链表,求链表长度时要根据链表实际长度,不能盲目运用题目所给数据。L2-002 链表去重 (25 分)给定一个带整数键值的链表 L,你需要把其中绝对值重复的键值结点删掉。即对每个键值 K,只有第一个绝对值等于 K 的结点被保留。同时,所有被删除的结点须被保存在另一个链表上。例如给定 L 为 21→-15→-15→-7→15,你需要输出去重后的链表 21→-15→-7,还有被删除的链表 -15→15。输入格式:输入在第一行给

2021-04-21 14:05:58 261

原创 深搜dfs--L2-016 愿天下有情人都是失散多年的兄妹 (25 分)

L2-016 愿天下有情人都是失散多年的兄妹 (25 分)呵呵。大家都知道五服以内不得通婚,即两个人最近的共同祖先如果在五代以内(即本人、父母、祖父母、曾祖父母、高祖父母)则不可通婚。本题就请你帮助一对有情人判断一下,他们究竟是否可以成婚?输入格式:输入第一行给出一个正整数N(2 ≤ N ≤10​4​​ ),随后N行,每行按以下格式给出一个人的信息:本人ID 性别 父亲ID 母亲ID其中ID是5位数字,每人不同;性别M代表男性、F代表女性。如果某人的父亲或母亲已经不可考,则相应的ID位置上标记

2021-04-21 14:04:45 100

原创 并查集灵活运用--L2-013 红色警报 (25 分)

L2-013 红色警报 (25 分)战争中保持各个城市间的连通性非常重要。本题要求你编写一个报警程序,当失去一个城市导致国家被分裂为多个无法连通的区域时,就发出红色警报。注意:若该国本来就不完全连通,是分裂的k个区域,而失去一个城市并不改变其他城市之间的连通性,则不要发出警报。输入格式:输入在第一行给出两个整数N(0 < N ≤ 500)和M(≤ 5000),分别为城市个数(于是默认城市从0到N-1编号)和连接两城市的通路条数。随后M行,每行给出一条通路所连接的两个城市的编号,其间以1个空格分隔

2021-04-19 21:03:48 734

原创 二分法查找/set内置函数--L2-014 列车调度 (25 分)

L2-014 列车调度 (25 分)火车站的列车调度铁轨的结构如下图所示。两端分别是一条入口(Entrance)轨道和一条出口(Exit)轨道,它们之间有N条平行的轨道。每趟列车从入口可以选择任意一条轨道进入,最后从出口离开。在图中有9趟列车,在入口处按照{8,4,2,5,3,9,1,6,7}的顺序排队等待进入。如果要求它们必须按序号递减的顺序从出口离开,则至少需要多少条平行铁轨用于调度?输入格式:输入第一行给出一个整数N (2 ≤ N ≤10​5​​ ),下一行给出从1到N的整数序号的一个重排

2021-04-19 20:03:52 194

原创 天梯赛L1题目总结

题目特点:题目不难,但是题目坑有点多,可以敲出来一部分,但有可能拿不了满分。L1-002 打印沙漏 (20 分)本题要求你写个程序把给定的符号打印成沙漏的形状。例如给定17个“*”,要求按下列格式打印所谓“沙漏形状”,是指每行输出奇数个符号;各行符号中心对齐;相邻两行符号数差2;符号数先从大到小顺序递减到1,再从小到大顺序递增;首尾符号数相等。给定任意N个符号,不一定能正好组成一个沙漏。要求打印出的沙漏能用掉尽可能多的符号。输入格式:输入在一行给出1个正整数N(≤1000)和一个符

2021-04-15 21:18:59 242 1

原创 L2-029 特立独行的幸福

L2-029 特立独行的幸福 (25 分)对一个十进制数的各位数字做一次平方和,称作一次迭代。如果一个十进制数能通过若干次迭代得到 1,就称该数为幸福数。1 是一个幸福数。此外,例如 19 经过 1 次迭代得到 82,2 次迭代后得到 68,3 次迭代后得到 100,最后得到 1。则 19 就是幸福数。显然,在一个幸福数迭代到 1 的过程中经过的数字都是幸福数,它们的幸福是依附于初始数字的。例如 82、68、100 的幸福是依附于 19 的。而一个特立独行的幸福数,是在一个有限的区间内不依附于任何其它数字

2021-04-14 19:39:49 147

原创 并查集+结构体+sort排序综合考量--家庭房产

并查集+结构体+sort排序综合考量–家庭房产L2-007 家庭房产 (25 分)给定每个人的家庭成员和其自己名下的房产,请你统计出每个家庭的人口数、人均房产面积及房产套数。输入格式:输入第一行给出一个正整数N(≤),随后N行,每行按下列格式给出一个人的房产:编号 父 母 k 孩子1 … 孩子k 房产套数 总面积其中编号是每个人独有的一个4位数的编号;父和母分别是该编号对应的这个人的父母的编号(如果已经过世,则显示-1);k(0k≤)是该人的子女的个数;孩子i是其子女的编号。输出格式:首先在

2021-04-14 18:59:36 127

原创 2021.3.13号组队赛补题

c题:当时考虑复杂了,直接遍历即可。#include<bits/stdc++.h>#include#define ll long longusing namespace std;ll a[6]={0};int main(){ll t;cin>>t;while(t–){ll n,nl,nll;cin>>n;nl=n;nll=n;ll i,j;cout<<"Input cost: "<<n<<endl;do

2021-03-21 15:37:21 159

空空如也

空空如也

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

TA关注的人

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