自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 长草(蓝桥杯BFS)

小明有一块空地,他将这块空地划分为 n 行 m 列的小块,每行和每列的长度都为 1。小明选了其中的一些小块空地,种上了草,其他小块仍然保持是空地。这些草长得很快,每个月,草都会向外长出一些,如果一个小块种了草,则它将向自己的上、下、左、右四小块空地扩展,这四小块空地都将变为有草的小块。请告诉小明,k 个月后空地上哪些地方有草。

2023-04-07 19:37:48 161 1

原创 7-6 小字辈 (25 分)

题目详情 - L2-026 小字辈 (25 分) (pintia.cn)题解:为啥要写这道题嘞?因为找树最大深度并保存可以写在一个dfs里(第二次写我自己还是忘了,写了两个dfs函数),用set集合如果等于最大值那么st.clear(),然后加个判断maxx==cnt,之后maxx就已经是所求的最大值了!!!!!ACCODE:#include<bits/stdc++.h>using namespace std;int n,m;vector<int>son[1000

2022-04-19 20:34:31 221

原创 L2-007 家庭房产 (25 分)

题目详情 - L2-007 家庭房产 (25 分) (pintia.cn)题解:并查集的典型应用,主要应用所有子孙点给祖宗点贡献,将祖宗点存入vector数组中进行排序!#include<bits/stdc++.h>using namespace std;int n;struct node{ int number; int ren; double tao; double mianji;}ans[10010];bool cmp(node a,node b){ if

2022-04-18 09:54:38 231

原创 L2-012 关于堆的判断

题目详情 - L2-012 关于堆的判断 (25 分) (pintia.cn)题解:将数据结构和代码结合,不光是学PPT,更要会自己把代码敲出来,虽然DS考的还行,但是高分低能可不行,这个题就是教会我如何写出来小根堆!并且运用性质(i和i*2+1)放在数组中。ACCODE:#include<bits/stdc++.h>using namespace std;int n,m;int a[1010];char c[1010];void creat(int x){ if.

2022-04-17 20:46:54 771

原创 二进制“<”:“const _Ty”不定义该运算符或到预定义运算符可接收的类型的转换

当你把结构体放进set容器里时,你要好好想一想,set放进去是会自动排序的,如果你不对<重定义,那么系统就不知道按结构体里的哪个元素进行排序了!上错误代码#include <iostream>#include <algorithm>#include <vector>#include <string>#include <set>#include <map>#define inf 0x3f3f3f3fusing

2022-04-11 17:39:22 1133

原创 问加几个括号变合法序列

链接:登录—专业IT笔试面试备考平台_牛客网题目描述康康刚学习编程,一天教程序设计的刘老师给他出了个问题,并跟他说做不完不能走!康康看到题目傻眼了,这我哪会做啊,于是偷偷通过QQ把题目发给了你,希望你能够帮他做出来。题目是这样的:给你一个括号的序列,比如()()),你可以在其中添加'('或者')',现在你希望添加尽可能少的括号,让这个括号序列合法,请问你应该添加多少括号,才能使这个括号序列合法?合法的括号序列:()((()))不合法的括号序列)()(())(,或者()))))等..

2022-04-02 20:41:08 776

原创 蓝桥杯之平面切分(几何问题)

平面上有 NN 条直线,其中第 ii 条直线是 y = A_i \times x + B_iy=Ai​×x+Bi​。请计算这些直线将平面分成了几个部分。输入描述第一行包含一个整数 NN。以下 NN 行,每行包含两个整数 A_i, B_iAi​,Bi​。其中,1 \leq N \leq 1000, −10^5 \leq A_i,B_i \leq 10^51≤N≤1000,−105≤Ai​,Bi​≤105。输出描述一个整数代表答案。输入输出样例示例输入31 1

2022-04-02 12:13:24 538

原创 蓝桥杯之平方拆分

本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。将 20192019 拆分为若干个两两不同的完全平方数之和,一共有多少种不同的方法?注意交换顺序视为同一种方法,例如 13^2 + 25^2 + 35^2 = 2019132+252+352=2019 与 13^2 + 35^2 +25^2 = 2019132+352+252=2019 视为同一种方法。题解:一看就是DFS,但是难点就是怎么两两不同和无序性。这个题和整数分解为若干项之和有异曲同工之妙,要在函数中设置一个b

2022-03-29 16:29:58 610 1

原创 蓝桥杯之七段码(dfs+并查集)

题目描述本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。小蓝要用七段码数码管来表示一种特殊的文字。上图给出了七段码数码管的一个图示,数码管中一共有 77 段可以发光的二 极管,分别标记为 a, b, c, d, e, f, ga,b,c,d,e,f,g。小蓝要选择一部分二极管(至少要有一个)发光来表达字符。在设计字符 的表达时,要求所有发光的二极管是连成一片的。例如:bb 发光,其他二极管不发光可以用来表达一种字符。例如 cc 发光,其他二极管不发光可以用

2022-03-29 10:15:13 157

原创 整数分解为若干项之和 (20 分)

将一个正整数N分解成几个正整数相加,可以有多种分解方法,例如7=6+1,7=5+2,7=5+1+1,…。编程求出正整数N的所有整数分解式子。输入格式:每个输入包含一个测试用例,即正整数N (0<N≤30)。输出格式:按递增顺序输出N的所有整数分解式子。递增顺序是指:对于两个分解序列N1​={n1​,n2​,⋯}和N2​={m1​,m2​,⋯},若存在i使得n1​=m1​,⋯,ni​=mi​,但是ni+1​<mi+1​,则N1​序列必定在N2​序列之前输出。每个式子由小到大相加,式

2022-03-28 16:13:47 186

原创 L2-038 病毒溯源 (25 分)

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

2022-03-21 11:29:36 115

原创 7-9 估值一亿的AI核心代码 (字符串ex人但是思想值得学习)

本题要求你实现一个稍微更值钱一点的 AI 英文问答程序,规则是:无论用户说什么,首先把对方说的话在一行中原样打印出来; 消除原文中多余空格:把相邻单词间的多个空格换成 1 个空格,把行首尾的空格全部删掉,把标点符号前面的空格删掉; 把原文中所有大写英文字母变成小写,除了I; 把原文中所有独立的can you、could you对应地换成I can、I could—— 这里“独立”是指被空格或标点符号分隔开的单词; 把原文中所有独立的I和me换成you; 把原文中所有的问号?...

2022-03-16 21:10:22 139

原创 进制转化问题

7-15 倒数第N个字符串 (15 分)给定一个完全由小写英文字母组成的字符串等差递增序列,该序列中的每个字符串的长度固定为 L,从 L 个 a 开始,以 1 为步长递增。例如当 L 为 3 时,序列为 { aaa, aab, aac, ..., aaz, aba, abb, ..., abz, ..., zzz }。这个序列的倒数第27个字符串就是 zyz。对于任意给定的 L,本题要求你给出对应序列倒数第 N 个字符串。输入格式:输入在一行中给出两个正整数 L(2 ≤ L ≤ 6)和 N(≤1

2022-03-14 17:19:15 78

原创 如何正确输入字符串

7-19 福到了 (15 分)“福”字倒着贴,寓意“福到”。不论到底算不算民俗,本题且请你编写程序,把各种汉字倒过来输出。这里要处理的每个汉字是由一个 N×N 的网格组成的,网格中的元素或者为字符@或者为空格。而倒过来的汉字所用的字符由裁判指定。输入格式:输入在第一行中给出倒过来的汉字所用的字符、以及网格的规模 N (不超过100的正整数),其间以 1 个空格分隔;随后 N 行,每行给出 N 个字符,或者为@或者为空格。输出格式:输出倒置的网格,如样例所示。但是,如果这个字正...

2022-03-14 16:20:43 1055

原创 队列Q(一个数组能按另一个数组排序)

1011-队列Q_STDU第二周训练 (nowcoder.com)题目描述ZZT 创造了一个队列 Q。这个队列包含了 N 个元素,队列中的第 i 个元素用 Qi 表示。Q1 表示队头元素,QN 表示队尾元素。队列中的元素是 N 的一个全排列。ZZT 需要在这个队列上执行 P 次操作,操作分两种:FIRST X: 将元素 X 移到队头。LAST X: 将元素 X 移到队尾。在 P 次操作之后,ZZT 想知道队列中的元素的排列方式,由于他最近很忙,因此需要请你帮他解决这个问题。 ...

2022-01-25 20:03:48 515

原创 [NOIP2004]合并果子(优先队列板子题/Huffman树)

1008-[NOIP2004]合并果子_STDU第二周训练 (nowcoder.com)在一个果园里,多多已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆。多多决定把所有的果子合成一堆。每一次合并,多多可以把两堆果子合并到一起,消耗的体力等于两堆果子的重量之和。可以看出,所有的果子经过n-1次合并之后,就只剩下一堆了。多多在合并果子时总共消耗的体力等于每次合并所耗体力之和。因为还要花大力气把这些果子搬回家,所以多多在合并果子时要尽可能地节省体力。假定每个果子重量都为1,并且已知果子.

2022-01-06 17:11:02 136

原创 并查集(大裸题)

给你一个 n 个点,m 条边的无向图,求至少要在这个的基础上加多少条无向边使得任意两个点可达~输入4 21 23 4输出1居然一开始看到没有立马想到并查集,ans=联通区域数-1;ACCODE:#include<bits/stdc++.h>using namespace std;int fa[100010];int n,m;int find(int x){ if(x==fa[x])return x; else return

2022-01-06 09:19:06 422

原创 Rails(栈的顺序判断是正与否)

1004-Rails_STDU第二周训练 (nowcoder.com)死胡同,啥意思:栈底呗。其实是给你个出栈顺序让你判断正不正确(入栈顺序都是从1到N)。模拟栈的入和出不就好了吗!ACCODE:哈哈有了前面那个题铺垫,这个题自己想出来不是有手就行嘛,嘿嘿嘿~~#include <bits/stdc++.h>using namespace std;typedef long long ll;#define INF 0x3f3f3f3f#define mem(a) me

2022-01-05 20:07:37 167

原创 牛牛与后缀表达式(利用栈的典型例题)

1002-牛牛与后缀表达式_STDU第二周训练 (nowcoder.com)给定牛牛一个后缀表达式s,计算它的结果,例如,1+1对应的后缀表达式为1#1#+,‘#’作为操作数的结束符号。其中,表达式中只含有‘+’、’-‘、’*‘三种运算,不包含除法。本题保证表达式一定合法,且计算过程和计算结果的绝对值一定不会超过10的18次示例1输入"1#1#+"返回值2说明1#1#+这个后缀表达式表示的式子是1+1,结果为2示例2输入"12#3#+15#*.

2022-01-05 17:08:01 919

原创 栈和排序(思路有点妙)

给你一个1->n的排列和一个栈,入栈顺序给定你要在不打乱入栈顺序的情况下,对数组进行从大到小排序当无法完全排序时,请输出字典序最大的出栈序列输入描述:第一行一个数n第二行n个数,表示入栈的顺序,用空格隔开,结尾无空格输出描述:输出一行n个数表示答案,用空格隔开,结尾无空格示例输入52 1 5 3 4输出5 4 3 1 2说明2入栈;1入栈;5入栈;5出栈;3入栈;4入栈;4出栈;3出栈;1出栈;2出栈ACCODE:#inclu

2022-01-05 16:39:40 524

原创 蓝桥杯之回文日期(测试点比较恶心,思路比较清奇)

题目描述2020 年春节期间,有一个特殊的日期引起了大家的注意:2020 年 2 月 2 日。因为如果将这个日期按 “yyyymmdd” 的格式写成一个 8 位数是 20200202,恰好是一个回文数。我们称这样的日期是回文日期。有人表示 20200202 是 “千年一遇” 的特殊日子。对此小明很不认同,因为不到 2 年之后就是下一个回文日期:20211202 即 2021 年 12 月 2 日。也有人表示 20200202 并不仅仅是一个回文日期,还是一个 ABABBABA 型的回文日期。对此

2022-01-03 19:57:41 849 2

原创 二分法最大值最小化(或最小值最大化)

3273 -- Monthly Expense (poj.org) Language:Default Monthly Expense Time Limit:2000MS Memory Limit:65536K Total Submissions:47863 Accepted:17452 Description Farmer John is an astounding accounting wiz...

2022-01-02 21:22:24 563

原创 「土」巨石滚滚

秋莉掌握了一种土属性魔法她使用这种魔法建造了一个大型的土球,并让其一路向下去冲撞障碍土球有一个稳定性x,如果x < 0,它会立刻散架每冲撞一个障碍,土球会丧失ai的稳定性,冲撞之后,又会从障碍身上回馈bi的稳定性帕秋莉想知道,如果合理的安排障碍的顺序,在保证土球不散架的情况下,是否可以将障碍全部撞毁呢?这道题:我知道了可以写好几个cmp来进行规律排序 第三次排序(一定扣血)是按照回血快在回血慢前面进行的return a.jia>b.jia(比如现在100滴血,90

2022-01-02 15:30:31 242

原创 [HNOI2003]激光炸弹(二维前缀和+大坑点)

地图上有 N 个目标,用整数 Xi,Yi表示目标在地图上的位置,每个目标都有一个价值 Wi。注意:不同目标可能在同一位置。现在有一种新型的激光炸弹,可以摧毁一个包含 R×R个位置的正方形内的所有目标。激光炸弹的投放是通过卫星定位的,但其有一个缺点,就是其爆炸范围,即那个正方形的边必须和 x,y 轴平行。若目标位于爆破正方形的边上,该目标将不会被摧毁.求一颗炸弹最多能炸掉地图上总价值为多少的目标。输入格式第一行输入正整数 N 和 R,分别代表地图上的目标数目和正方形的边长,数据用空格隔

2022-01-02 13:56:31 137

原创 石铁大算法协会月赛(一)

这场比赛给我的教训不是会多少题,而是做题心态的问题:第一道题很快AC,第二道看错题了,人家说的是1旁边不能有1,不是1旁边必须有0!!!!直接我交了好多次,md题都看错了做个der?由此影响了后边的题(毕竟这么简单的题),题要慢审!!!!!https://vjudge.net/contest/474353#include <iostream>#include <string>using namespace std;typedef long long ll;#de

2022-01-01 13:27:39 126

原创 vscode配置json文件

s我吐了,参考大佬的文章错误百出,最后综合了一下:两个文件即可 launch.json和tasks.json 直接用系统默认的再修改一下环境变量路径就可以了! json在.vscode下就可以对下面所有文件夹起作用!!直接上两个json文件代码launch.json{ // 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性的描述。 // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?lin..

2021-12-31 09:29:48 4714

原创 1018数学考试(注意用longlong还是int)

————————————链接——————————————//#include<iostream>//#include<algorithm>//#include<cstring>//using namespace std;////int a[5] = { 5,3,10,7,1 };//int sum[200005];//#define mem(a) memset(a, 0, sizeof(a)) //int main() {// int min =.

2021-12-30 15:45:30 451

原创 回文数(牛客littele水)

————————————链接——————————————这道题的价值在于判断前导0的时候,如果总出现次数-1==0的个数就是<->一定有前导0的出现(换句话数就是a[0]为偶数且其他出现次数只有1个1比如2 1 0 0 0 0 0 0 0 0) 比如 2 5 2 2 0 0 0 0 0 0,正确的结果应该是 10123132101,结果我当时构造成了:11023132011,前面多次只出现一次然后直接接0,和后面那个规律不同(后面就都一样了)#include <bits/st

2021-12-30 09:32:56 420

原创 输入无限组字符串

1029-安卓图案解锁_STDU第一周训练(一) (nowcoder.com) string str; while (1) { cin >> str; }//这样会TLE string str; while (cin >> str) { …………………… }//这样就不会TLE

2021-12-29 09:50:28 171

原创 差分数组(例题+讲解)

差分数组详细讲解:差分数组是个啥?能干啥?怎么用?(差分详解+例题)_From now on...的Blogs-CSDN博客_差分数组绝绝子!!!很好的诠释了差分数列的用途:其实差分数组是一个辅助数组,从侧面来表示给定某一数组的变化,一般用来对数组进行区间修改(同时加或减)的操作,作用就是求多次进行区间修改后的数组喽!(我还发现个规律区间问题好像都得struct+好排序)一开始写的说内存爆了,又vector又set的果然不是最优算法.......... #include <

2021-12-28 21:07:07 372

原创 值周(和区间覆盖大同小异)

https://ac.nowcoder.com/acm/contest/26813/1019这题肯定不能暴力(因为这道题目的数据很大,暴力的话毫无疑问是tle的)。那么就需要写进结构体进行排序。有个大坑:绝对不能用a[i]和a[i-1]比,因为会遗忘之前的右端点而造成内部的区间进行比较错误地更新sum值!必须和temp右端点比较!!!#include <iostream>#include<algorithm>using namespace std;int

2021-12-28 16:44:27 219

原创 取尺法(书上P146)

易懂的题解链接就是相当于移动左右指针,反复推进区间的开头和末尾(相当于左右端点可变化的尺子),求满足条件的最小区间。牛客网:板子题小N现在有一个字符串S。他把这这个字符串的所有子串都挑了出来。一个S的子串T是合法的,当且仅当T中包含了所有的小写字母。小N希望知道所有的合法的S的子串中,长度最短是多少。输入ykjygvedtysvyymzfizzwkjamefxjnrnphqwnfhrnbhwjhqcgqnplodeestuykjygvedtysvyymzfizzwkjamefxjnrn

2021-12-27 17:00:52 364

原创 贪心之区间覆盖问题(板子)

——————————链接————————一开始是这样写的#include <bits/stdc++.h>using namespace std;typedef long long ll;#define inf 0x3f3f3f3fint N, M;struct pian{ int l, r;} a[100005];bool func(pian a, pian b){ if (b.l <= a.r) return 1; re

2021-12-27 11:05:34 279

原创 区间位运算总结(求区间内|、&、^的最大值)

按位与:b站视频灯哥(已收藏):&的详细视频讲解,讲的很详细,把原理讲清楚了,if忘了可以回看这个。我总结一下:区间内如果Σl&a[i],前一部分不变,后边不同开始全变0; 区间a|b最大值 : 前一部分不变,后一部分全变1; 区间xor a^b最大值:前一部分变0,后一部分全变1;总之原理懂了之后灵活变通就可。这是a|b的#include <bits/stdc++.h...

2021-12-26 22:09:40 858

原创 位运算二进制多少位

#include<bits/stdc++.h>using namespace std;typedef long long ll;int digit(ll m){ int cnt = 0; while(m){ m >>= 1; cnt++; } return cnt;}int main(){ cout << digit(8); //4 }

2021-12-26 19:05:28 103

原创 二分法求函数零点

高中数学二分法求零点(也可以求导函数的零点=原函数的最大值)。————————————链接——————————————#include <bits/stdc++.h>using namespace std;typedef long long ll;#define inf 0x3f3f3f3ftypedef pair<int, int> P;double qpow(ll base,ll pow){ double res=1; while(pow){

2021-12-26 11:11:30 423

原创 快速幂板子

非常妙+详细讲解:https://blog.csdn.net/qq_19782019/article/details/85621386#include <bits/stdc++.h>using namespace std;typedef long long ll;ll qpow(int base,int pow) { ll res = 1; while (pow) { if (pow&1)res *= base; pow >>= 1; base .

2021-12-26 09:51:32 203

转载 欧拉筛(又称线性筛)

清楚明白的博客!其中ola筛就是少了很多重复,必须理解if(n % primes[j])break; 是因为什么!(数学逻辑推理证明了能够减少多次重复筛选)

2021-12-25 22:13:51 414

原创 CFdiv3之B. Squares and Cubes

这是链接B. Squares and CubesPolycarp likes squares and cubes of positive integers. Here is the beginning of the sequence of numbers he likes:11,44,88,99, ....For a given numbernn, count the number of integers from11tonnthat Polycarp likes. In ot...

2021-12-25 22:00:59 460

原创 回文字符串模板(优先输出长度较小+靠左)

这一天,lhy同学做了一个梦,梦见嘉然对自己说:我喜欢编程厉害的男生!只有编程厉害的男生我才会考虑,现在我要考考你。现在我给你一个长度不超过1200的字符串,你需要帮我找到所有的长度大于等于2的回文子串,什么是回文子串呢?回文子串就是从左向右看和从右向左看一样的在字符串中连续的子串。我想你可能听不明白。那我举个例子吧!比如abcbaw那么abcba就是其中的一个回文子串,同样的bcb也是长度大于等于2的回文子串。那么这些回文子串,每一个子串占一行,而且一定要优先输出长度较小的,如果长

2021-11-15 18:25:38 274

空空如也

空空如也

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

TA关注的人

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