- 2024-08-19day2打卡
209.长度最小的数组使用滑动窗口,这个方法我是没有想到的classSolution{public:intminSubArrayLen(inttarget,vector&nums){inti=0;intmin=nums.size()+1;intj=0;intsum=0;for(;j<nums.size();++j){sum+=nums[j];while(sum>=target){if(min
- 2024-08-19“i++”是怎么工作的?
我们以下面这么一段代码开始voidtest_inc(){inti=10;i=i++;printf("i=%d\n",i);}运行输出i=10看起来出乎意料,来我们看看他编译之后的汇编代码就明白了test_inc:.LFB20:.cfi_startprocendbr64pushq%rbp
- 2024-08-19算法与数据结构——时间复杂度
时间复杂度运行时间可以直观且准确地反映算法的效率。要准确预估一段代码的运行时间,应该进行如下操作。确定运行平台,包括硬件配置、编程语言、系统环境等,这些因素都会影响代码的运行效率。评估各种计算操作的运行时间,例如加法操作需要1ns,乘法操作需要10ns,打印操作需要5ns等。
- 2024-08-19Strings, Subsequences, Reversed Subsequences, Prefixes
题目大意给定两个字符串s和t,求出在s里面有多少个本质不同的子序列,使得该序列的前缀包含t,且该序列的反串也包含t即s的子序列=t+x+反t‘首先要确定是否有,就是判断我的S字符串中有没有包含T字符串for(l=0;l<n;l++){ if(s[l]==t[num])num++; if(num==m)bre
- 2024-08-19【c】运算符优先级速记
图示速记归类初等运算符>单目运算符>算术运算符>关系运算符>逻辑运算符>条件运算符>赋值运算符详细分类初等运算符有:()、[]、->、.(后两者均为结构体成员运算符);单目运算符有:!、~、++、--、sizeof、&、*;算术运算符有:*、/、+、-、<<、>>;关系运算符有:<、<=、>、>=、==、!=
- 2024-08-19C语言学习--排序和查找
提示:排序和查找算法是算法领域中最基本的概念之一,它们在数据组织、优化查询效率等方面发挥着至关重要的作用。目录前言12.1排序算法的介绍12.2冒泡排序12.2.1基本介绍12.2.2冒泡排序应用实例12.2.3分析冒泡的过程+代码12.3查找12.3.1介绍12.3.2案例演示12
- 2024-08-19YC323C [ 20240724 CQYC NOIP 模拟赛 T3 ] 手环(ring)
题意给定两个长为\(n\)的\(0/1\)串\(A,B\)。每次操作:对\(A\)向左或向右循环移位。选择\(0\lep<n\landB_i=1\),则将\(A_i\)取反。求将\(A\)变为\(B\)的最小操作次数。无解输出-1。\(n\le2000\)Sol显然无解当且仅当\(A\)和\(B\)不相同且\(B
- 2024-08-18关于c++使用toml plusplus(俗称toml++)的使用(4)
链接toml++-githubtoml++-帮助文档使用要求:c++17及以上版本toml语法-英文toml语法-中文toml读取参见官方给出的范例toml写入目标:表嵌套子表数组的写入比如:文件内容[NET_INTERFACE]bool=falsebool_arr=[false,false]complex_arr
- 2024-08-182024百度之星决赛部分题解(难度排序前六题)
前言手速6题,可惜第四题磨了几个小时没磨出来,多做一题就金了,还是实力差了点,最后银牌前列。下面的题解是根据代码回忆大概的题意,主要是给出来赛时的参考代码A.状压题意:学校集训队总的有\(n\)个人,保证\(n\)是3的倍数,每个人有个人实力\(a_i\),每两个人之间有配合程度\(b_{i
- 2024-08-18关于c++使用toml plusplus(俗称toml++)的使用(2)
链接toml++-githubtoml++-帮助文档使用要求:c++17及以上版本toml语法-英文toml语法-中文toml读取参见官方给出的范例toml写入目标目标:数组表的写入目标文件内容如下[NET_INTERFACE]bool=falseinteger=1234567890string='thisisastring'[[f
- 2024-08-18关于c++使用toml plusplus(俗称toml++)的使用
链接toml++-githubtoml++-帮助文档使用要求:c++17及以上版本toml语法-英文toml语法-中文toml读取参见官方给出的范例toml写入一个范例,一个开胃菜toml文件待生成的目标文件内容为[NET_INTERFACE]bool=falseinteger=1234567890string='thisis
- 2024-08-18Leetcode每日刷题之18.四数之和
1.题目解析这里的18.四数之和与之前的三数之和有着异曲同工之妙,所以建议看完三数之和再来看本题,详细题目见Leetcode每日刷题之15.三数之和 ,只不过这里需要寻找的是四元组,也是不能寻找重复的四元组并且四元组内的数字可以按照任意顺序返回2.算法原理关于四数之和的思路
- 2024-08-18AC自动机
AC自动机前言我觉得AC自动机这种东西非常抽象,有必要写一篇博客来整理一下,以加深理解。概况AC自动机是以Trie树的结构为基础,结合KMP思想建立的自动机,用于解决多模式串匹配等任务。一般来说,建立一个AC自动机有两个步骤:把所有的模式串建成一颗Trie树。用KMP的思想对
- 2024-08-18九九乘法表
先定义一个变量intn=0;遍历九次,当开始进入for循环的时候先递增,因为n++,i++,所以i=n,得到第一行:1x1,2x2~~~9x9接着再进入第二个for循环嵌套for循环的原理是:外层循环一次,内层全部循环publicstaticvoidEx18(){intn=0;//遍历9
- 2024-08-17C语言程序设计-[22] 数组应用
1、简单插入排序算法根据以上分析,代码与结果如下:#include"stdio.h"intmain(){ intcount,j,x,a[101];scanf("%d",&x);if(x<=0) return;else a[1]=x;count=1;scanf("%d",&x);while(x>0){
- 2024-08-17HDU-ACM 2024 Day4
T1001超维攻坚(HDU7469)三维凸包,不会。T1002黑白边游戏(HDU7470)显然这道题没有一个固定的最优策略,所以只能\(\text{dp}\)决策。可以倒着做,设\(f_{i,S}\)表示从后往前进行了第\(i\simm\)轮,第\(i\)轮结束后(在原始意义下是开始前)黑边集合为\(S\),双方使用最优策
- 2024-08-17Trie树,字典树
题目链接字典树的介绍字典树也叫(Trie树),字典树有插入和查询两个操作,我们先假设我们已经插入了单词be、fake、beef、face这几个单词,那么我们可以建树。当我们查询be、fa、fAKe、fac时,答案分别为:\(2,2,0,1\)。字典树的插入我们可以给树上的每个节点标号,比如上面的树,可标为:
- 2024-08-17代码随想录算法训练营day09|151.翻转字符串里的单词,卡码网:55.右旋转字符串,28.实现 strStr(),459.重复的子字符串
151.翻转字符串里的单词题目链接:https://leetcode.cn/problems/reverse-words-in-a-string/description/暴力removeExtraSpaces:voidremoveExtraSpaces(string&s){for(inti=s.size()-1;i>0;i--){if(s[i]==''&&s[i]=
- 2024-08-17Grid++Report 组件使用最简代码
在‘添加引用’窗口中选择‘COM’选项卡,在列表中双击‘Grid++ReportEngine6.0TypeLibrary’项使用设计器设计一个模板,加入vs2022项目 设置为文件新则拷贝因为是打印标签,数据有限,所以模板使用参数传递数据,纸型按实际标签的长宽设置c#调用模板的代码如下privatev
- 2024-08-16leetcode面试经典150题-13. 罗马数字转整数
https://leetcode.cn/problems/roman-to-integer/description/?envType=study-plan-v2&envId=top-interview-150 GOpackageleetcode150import"testing"/*romanMap:=map[string]int{"I":1,"V":
- 2024-08-16PTA 7-30 字符串的冒泡排序
7-30字符串的冒泡排序(20分)我们已经知道了将N个整数按从小到大排序的冒泡排序法。本题要求将此方法用于字符串序列,并对任意给定的K(<N),输出扫描完第K遍后的中间结果序列。输入格式:输入在第1行中给出N和K(1≤K<N≤100),此后N行,每行包含一个长度不超过10的、仅由小写英文字母组成的
- 2024-08-16算法模板
拓扑排序点击查看代码publicBooleanbfsOptimize(intn,int[][]edges){//初始化入度数组,每个节点有两个元素,第一个元素表示入度,第二个元素暂时未使用int[][]indegrees=newint[n][2];//初始化邻接表,用于存储图的连接关系List<List<Integer>>adj
- 2024-08-16探究乌龟对对碰游戏的最优策略
1.黑箱中有10种不同颜色的乌龟,保证他们个数始终足够且相等。乌龟将由参与者抽出并填入编号为1-9的九宫格中,且优先填入数字小的格子。参与者开局拥有n次抽取的机会。2.参与者开局自己确定一个幸运颜色,抽中幸运颜色即可再抽一次3.当网格中一行或一列出现三只颜色相同的乌龟,这三只
- 2024-08-16P1578 奶牛浴场
题面链接最大子子矩形问题首先一些概念1.有效子矩阵:内部不包含任何障碍点,且边界与坐标轴平行的子矩阵2.极大子矩阵:一个有效子矩阵,如果不包含它,且比它大的有效子矩阵,则为极大有效子矩阵3.最大有效子矩阵:所有有效矩阵中最大面积的子矩阵极大化思想定理1.有一个障碍点的矩形
- 2024-08-1615. 三数之和【 力扣(LeetCode) 】
一、题目描述给你一个整数数组nums,判断是否存在三元组[nums[i],nums[j],nums[k]]满足i!=j、i!=k且j!=k,同时还满足nums[i]+nums[j]+nums[k]==0。请你返回所有和为0且不重复的三元组。注意:答案中不可以包含重复的三元组。二、测试用例示例1:输