• 2024-06-23ABC359E的有趣解法
    题意:给定一个h序列,对于\(h_i\),找到一个\(j\)满足\(j<i\)且\(h_j>=h_i\),令\(ans_i=h_i*(i-j+1)+ans_j+1\),最后输出ans序列。赛时给了个很魔怔的解法,不知道是不是正解,反正是过了(摊手)我们可以开一个idx数组,将h[i]从小到大排序后将其原下表存入idx数组,这样我们从前
  • 2024-06-22萌熊6月j讲题
    A解法一(官方解法):要求每段的二进制或都相同,那么如果整个序列中存在某个数的第\(i\)位为\(1\),那么整个序列的每一段长度为\(k\)的连续子序列中都至少有一个数的第\(i\)位为\(1\)。我们可以对每一位单独求一个满足条件的最小的\(k\),然后所有位的\(k\)的最大值就是答
  • 2024-06-03[leetcode 3171] 解法列表
    线段树解法+二分classSolution{publicintminimumDifference(int[]nums,intk){this.nums=nums;this.n=nums.length;returncheck(k);}publicstaticvoidmain(String[]args){Solutionsolution=newSol
  • 2024-05-29[每日一练]按日期分组销售产品的最优解法
    该题目来自于力扣的pandas题库,链接如下:1484.按日期分组销售产品-力扣(LeetCode)题目要求:表 Activities:+-------------+---------+|列名|类型|+-------------+---------+|sell_date|date||product|varchar|+-------------+---------
  • 2024-05-28【LeetCode算法】第88题:合并两个有序数组
    目录一、题目描述二、初次解答三、官方解法四、总结一、题目描述二、初次解答1.思路:首次想到的解法:定义一个m+n长度的辅助数组,从头遍历这两个数组,谁小就放进辅助数组中并且对应往后走,最后使用memcpy函数将辅助数组内容拷贝到nums1中。这种解法容易想到,但是空间复杂
  • 2024-05-04第?课——基于矩阵快速幂的递推解法
    第?课——基于矩阵快速幂的递推解法由于中间的数论部分我自己学的很差,没有办法写出清晰的博客来,所以这里跳过了数论部分的博客,来到矩阵快速幂。递推递推是一个非常常用的工具。比如经典的斐波那契数列:\[f(x)=\left\{\begin{array}{**lr**}1&,0\l
  • 2024-04-28HDLBits练习:Countbcd
    目录题目代码解法一解法二解法三题目题目链接:Countbcd题目让写一个四位的BCD计数器,可以等价看成0000~9999的计数器,进位规则和我们日常的十进制计数一样。代码解法一通过例化或者修改一位的十进制计数器实现有关ena信号的处理部分,其实是与clk信号无关的;但是,也可以根据clk
  • 2024-04-23忙等待互斥——Peterson解法
    ANSIC编写的Peterson解法抽象化表示如下:其中,turn是共享资源,两进程会进行抢夺。intertest[2]看似是共享资源,但intertst[0]只被进程1修改,intertst[1]只被进程2修改,可看作他们的私有资源。该算法核心原理是:“每个进程在进入临界区之前,只会修改turn1次”。假设1:线程1进入临界区
  • 2024-04-18两种解法搞定链表相邻节点交换
    最近还是很喜欢用golang来刷算法题,更接近通用算法,也没有像动态脚本语言那些语法糖,真正靠实力去解决问题。下面这道题很有趣,也是一道链表题目,具体如下:24.SwapNodesinPairsSolvedMediumTopicsCompaniesGivenalinkedlist,swapeverytwoadjacentnodesandreturni
  • 2024-04-11Educational Codeforces Round 154 (Rated for Div. 2)
    B和C写的太慢了。吃了不该吃的罚时,C还莫名其妙的T了一发,另一发也是不应该T的。B连想了两个假做法,然后甚至都实现了,然后过不了样例,再基于这两个才想到了真做法。当时的思路已经有些模糊了,但是确实是写的太慢了,而且\(O(n^2)\)的限制给的也很宽裕,但是我居然还傻乎乎的去先\(O(n^2)
  • 2024-04-11实用算法模板——滑动窗口
    为了更好的说明这个问题,我们借用acWing上的一道题目模拟样例:解法一:使用stl中的双端队列求解解法二:使用数组模拟队列,运行速度更快如果还有疑问,可参考:C15【模板】单调队列滑动窗口最值_哔哩哔哩_bilibili希望对你有所帮助,感谢查看!
  • 2024-04-07幽默刷题DAY1
    版权声明:本文为博主原创文章,遵循CC4.0BY-SA版权协议,转载请附上原文出处链接和本声明。原文链接:https://blog.csdn.net/weixin_43840280/article/details/119447204本文为《剑指offer》刷题笔记的总结,花费不到两个月的时间将力扣上《剑指offer》的75道题刷了一遍,遇到不会的知
  • 2024-04-05RMQ问题的各种解法
    RMQ问题:给定一个序列,并有一些询问,每次询问一个区间的最大值或最小值。下面以区间最大值为例进行讲解,设序列长度为\(N\),有\(M\)次查询。1单调队列前提条件每个查询的区间互相不包含、离线、不能进行修改、不能在序列中增加元素。思路将所有查询按左端点排序(如果不保
  • 2024-04-04C语⾔编程题 计算最⼤公约数 和 打印最⼩公倍数
    1.计算最⼤公约数1.1 题⽬描述:      输⼊2个整数m和n,计算m和n的最⼤公约数,并打印出结果2.2解法思路:       最⼤公约数是指两个或多个整数共有约数中最⼤的⼀个。为了求出两个数的最⼤公约数,可以采⽤: •枚举试除法: 1.具体来说,公约数⼀定⼩于两个
  • 2024-04-02微分方程数值解法_常微分方程篇
    一阶常微分方程初值问题问题的适定性(well-posedness):(數學系的角度)•存在性:问题有解•唯一性:解是唯一的•稳定性:这个唯一解连续地依赖于问题中所给的数据(即初值、边值等)初值问题的求解Euler法區別(極限)入門要點:極限、中值定理==
  • 2024-03-31试题 算法训练 数字三角形(本人粗暴解法+递推与记忆化搜索解法)
    问题描述(图3.1-1)示出了一个数字三角形。请编一个程序计算从顶至底的某处的一条路径,使该路径所经过的数字的总和最大。●每一步可沿左斜线向下或右斜线向下走;●1<三角形行数≤100;●三角形中的数字为整数0,1,…99;输入格式文件中首先读到的是三角形的行
  • 2024-03-25sping 事务失效的7中情况
    1、抛出检查异常导致事务不能正确回滚原因:Spring默认只会回滚非检查异常解决:配置rollbackFor属性@Transactional(rollbackFor=Exception.class)2、业务方法内自己try-catch异常导致事务不能正确回滚原因:事务通知只有捉到了目标抛出的异常,才能进行后续的回滚处理,如果目
  • 2024-03-20常用不等式题目解法
    问题:已知${ x^{2}+y^{2}-xy=3}$,求${x+y}$的最大值?解法1(万能k法):设${k=x+y}$,则${x=k-y}$,可知:$${\left(k-y\right)^{2}+y^{2}-\left(k-y\right)y=3 }$$化简:$${3y^{2}-3ky+\left(k^{2}-3\right)=0}$$这是已知条件,${y}$必定有解。所以根据一元二次方程根判
  • 2024-03-10100251. 数组中的最短非公共子字符串 暴力解法
    100251. 数组中的最短非公共子字符串 显示英文描述 我的提交返回竞赛 通过的用户数684尝试过的用户数891用户总通过次数696用户总提交次数1416题目难度Medium给你一个数组 arr ,数组中有 n 个 非空 字符串。请你求出一个长度为 n 的字符串 ans
  • 2024-03-07【Centroids】不一样的解法
    前言一道好题,也就花了我一个下午而已。本人做法比较清奇,可以当做开阔思路参考,并不太建议实操(太难调了!)。文章较啰嗦,谅解。思路众所周知,我并不太喜推式子,所以我们考虑直接根据题目限定的条件硬刚。首先,我们先假定\(1\)为根,并求出每个点的子树的大小,记为数组\(size\),并且再
  • 2024-02-26【算法】关于最长递增子序列(LIS)二分+贪心解法
    前言我们都知道,解决LIS的常规解法为DP,时间复杂度为O(n^2),但是在一些条件苛刻的问题中,通常DP的解法会超时。那么,是否存在一种时间复杂度更优秀的解法呢?答案是肯定的,有一种二分加贪心的解法可以将时间复杂度降低为O(nlogn)。详解如果我们现在要求下面这一组数据的LIS:我们需
  • 2024-02-25【Python】 回文数的四种解法
    回文数就是指整数倒过来和原整数相等。1234Example1:  Input:121Output:true12345Example2:  Input:-121Output:falseExplanation:Fromlefttoright,itreads-121.Fromrighttoleft,itbecomes121-.Therefore
  • 2024-02-24kuhu另类解法
    escapefromwhk3题解题目大意定义两个不同质因数为kuhu,当且仅当两数和为2的整数次方.给定若干询问\([l,r]\),问在区间中取出若干的元素,使得元素两两间不为kuhu,最大的元素个数\(f(l,r)\)求\(\sum_{1\lel\ler\len}f(l,r)\)题解Part1如图,对于一个右端点,找到一个最接近它
  • 2024-02-18[2024 AtCoder 比赛历程]
    2024.1.20ABC337-G题目大意:给定一棵树,对于树上的每个点$u$,定义$f[u]$表示满足点$w$在点$u$到点$v$的路径中,且$w>v$的点对$(w,v)$的数量。$u$可以等于$w$。解法:比赛时先考虑将一个点钦定为$w$时,该点对其他点的贡献。发现对于一个点,它可以通过它的一个子树内
  • 2024-02-17一类经典问题的若干解法
    标题指的是这类问题:我们经常会看见求\(\sum\limits_{x=l}^r\sum\limits_{y=x}^rf(x,y)\)这类问题。我们常常能够通过智慧将\(f(x,y)\)转化为二维平面上的点,然后发现所有\(f\)可以用一些矩形加来表示。通常这里面矩形加的次数是\(\mathcalO(n)\)或者\(\mathcalO(n\log