Tem
  • 2024-09-30Leetcode:栈和队列的互相实现
    目录一、用两个队列实现栈题目:分析:代码实现: 二、用两个栈实现队列题目: 分析:代码:总结:核心就在于先进先出和后进先出之间的一个灵活变换,两个栈能够先进先出,而两个队列能够后进先出 一、用两个队列实现栈题目:.-力扣(LeetCode).-备战技术面试?力扣提供海量技术
  • 2024-09-21算法实现:Java 回文数检测
    题目描述:给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。回文数:是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文数,而 123 不是。题目分析我们做这道题很容易可以想到:我们新建一个变量,这个变量里存放着一个颠倒的x然后用这个数去与我
  • 2024-09-18zblog水印插件上传图片提示getimagesize(tem/phpOMxjlk)错误
    当在Z-Blog中使用水印插件上传图片时出现 getimagesize(tem/phpOMxjlk) 错误,这通常意味着 getimagesize 函数在处理图片时遇到了问题。这个错误可能是由以下几个原因引起的:1.图片文件不存在或路径错误问题描述:getimagesize 函数尝试访问一个不存在的文件或路径错误。
  • 2024-09-17杂项——矩阵加速(进阶)
    前言:在之前已经学习过矩阵快速幂的用法,那些只是基础。在ICPC中大多数难度较高,且并不是简单的只需要常数的矩阵或者简单的图上问题,而是结合dp方程去推导出来转移矩阵。trick:例题:链接:https://ac.nowcoder.com/acm/contest/88880/E来源:牛客网给出两个整数\(n,k\),有一个正整数
  • 2024-09-152024-06-02 矩阵重塑2
    include<bits/stdc++.h>usingnamespacestd;constintmaxn=1e4+1;intmar[maxn];voidtmar(intmar[],constintn,constintm){intmat[n+1][m+1],mat1[m+1][n+1];inti,j;for(i=1;i<=n;i++){for(j=1;j<=m;j++){mat[i][j]=mar[(i-1)*m+j];}}for(
  • 2024-09-01力扣刷题——3007.价值和小于等于 K 的最大数字
    根据题意,不难想到该题的暴力解法,从数字1开始,逐个累加。每次检查由当前数字num所构成的累加价值是否大于k,假如为真,那么可以输出上一个数字,即num-1classSolution{public:longlongfindMaximumNumber(longlongk,intx){longlongsubSum=0;for(lon
  • 2024-08-11算法学习:矩阵快速幂/矩阵加速
    1.前言 其实本质上来说,矩阵快速幂或是矩阵加速的题目比较的模板化一些,大体上都是属于我们要先写出来一个递推式子(或者是我们需要递推的式子),然后由于递推的次数过大,1e18之类的,会导致复杂度的飚升,所以我们会用到矩阵来帮我们快速处理。 另外,从题目的类型上大概是分为两类,一类是
  • 2024-08-07排序算法
    排序算法BUBSort冒泡排序伪代码do-swapped=false-fromi=1to最后一个没有排序过元素的索引-1-ifleft>right--swap(left,right)--swapped=truewhileswapped代码实现voidBubSort(){inttem=0;boolswapped;do{t
  • 2024-07-27P2024 [NOI2001] 食物链
    原题链接题解关系具有矢量特性,因此可以带权并查集维护code#include<bits/stdc++.h>#definelllonglongusingnamespacestd;intfa[50006];intval[50006];intfinds(intnow){if(now==fa[now])returnnow;inttem=fa[now];fa[now]=finds(fa[now])
  • 2024-07-27F. Bomb
    原题链接题解贪心的每次挑选当前最大的,但是要挑选k次,因此我们没法去遍历挑选的过程,因此我们考虑最终形态,由于每次挑选最大的元素,因此最后所有数一定不超过某个数,二分由此而来code#include<bits/stdc++.h>#definelllonglongusingnamespacestd;lln,k;lla[200005],b[
  • 2024-07-25题解:Codeforces Round 961 (Div. 2) A
    A.Diagonals*timelimitpertest:1secondmemorylimitpertest:256megabytesinput:standardinputoutput:standardoutputVitaly503isgivenacheckeredboardwithasideof\(n\)and\(k\)chips.Herealizedthatallthese\(k\)chipsneedto
  • 2024-07-19D. Sasha and a Walk in the City
    原题链接题意树中任意一条路径上黑色点的数量不超过两个,请问存在多少种树分析先随便找一个节点作为根节点,然后分类讨论假如根到叶子节点的路径上有两个黑色节点,则不能再添加其他点了如果根到叶子节点的路径上有一个黑色节点,则可以还可以在不在这条路径上的地方放黑色节点在
  • 2024-07-172024牛客暑期多校训练营1 I.Mirror Maze(题解)
    题意给一个\(n\timesm\)的二维char数组,由4种镜子组成,'\','/','-','|',镜面反射规则就是根据光线的方向和镜面的角度符合直觉的反射,然后有多组询问\(q\leq10^6\),每次给定起始位置和光线方向,求该光会经过多少面不同的镜子的反射。思路首先根据数据范围,发现肯定需要预处
  • 2024-07-11ROME 反序列化
    ROME反序列化rome是什么ROME是主要用于解析RSS和Atom种子的一个Java框架。ROME是一个可以兼容多种格式的feeds解析器,可以从一种格式转换成另一种格式,也可返回指定格式或Java对象。ROME兼容了RSS(0.90,0.91,0.92,0.93,0.94,1.0,2.0),Atom0.3以及Atom1.0fe
  • 2024-07-06代码随想录算法训练营第三天 | 203.移除链表元素 、 707.设计链表 、206.反转链表
    203.移除链表元素题目:.-力扣(LeetCode)思路:主要是通过运用虚拟头节点来统一移除元素的写法。代码:/***Definitionforsingly-linkedlist.*structListNode{*intval;*ListNode*next;*ListNode():val(0),next(nullptr){}*ListNode
  • 2024-06-13H. Don't Blame Me
    原题链接题解1.先想想能不能暴力?发现好像不行,因为不知道哪些元素组合的按位与能恰好有k个12.观察数据范围,发现\(a_i\leq63\)也就是说,按位与的结果最大不会大于63,即6位1,这暗示着我们可能可以从这里入手,即遍历所有按位与的情况,然后判断每种有k个1的按位与,有几个子序列
  • 2024-06-13Q28 LeetCode202 快乐数
    主要是查看HashMap中是否存储n,如果存储就说明非快乐数各位的数平方相加的方法 1classSolution{2publicbooleanisHappy(intn){3HashMap<Integer,Integer>map=newHashMap<>();45while(getSum(n)!=1){6intan
  • 2024-06-13G. D-Function
    原题链接题解先不考虑k的限制,而是考虑对于任意一个数,存不存在一个k使得题目所给等式成立当\(n·k\)没有进位时,等式一定成立(赛时也许想到这就够了)假如有进位呢?对于任何一个位数大于1的数,必有\(D(n)\ltn\)(想想十进制是怎么表示数的)而对于位数为1的数,有\(D(n)=n\)所
  • 2024-05-293.无重复字符的最长子串
    给定一个字符串s,请你找出其中不含有重复字符的最长子串的长度。示例1:输入:s="abcabcbb"输出:3解释:因为无重复字符的最长子串是"abc",所以其长度为3。示例2:输入:s="bbbbb"输出:1解释:因为无重复字符的最长子串是"b",所以其长度为1。示例3:输
  • 2024-05-28C. Nikita and LCM
    原题链接题解发现一串数字的lcm一定大于等于这一串数字的最大值,所以如果整个数组的lcm大于\(a_{max}\),直接输出n否则,注意这里的思维,否则,剩余数字组成的lcm一定小于等于\(a_{max}\)且是\(a_{max}\)的因子code#include<bits/stdc++.h>#definelllonglongusingnamesp
  • 2024-05-27七大排序算法:插入排序、希尔排序、选择排序、冒泡排序、堆排序、归并排序、快速排序
    以下内容转载自文章1.插入排序步骤:1.从第一个元素开始,该元素可以认为已经被排序2.取下一个元素tem,从已排序的元素序列从后往前扫描3.如果该元素大于tem,则将该元素移到下一位4.重复步骤3,直到找到已排序元素中小于等于tem的元素5.tem插入到该元素的后面,如果已排序所有元
  • 2024-05-25行业与气象数据的相关性探索
    行业数据与气象数据的相关性探索目录行业数据与气象数据的相关性探索缺失值的处理方式定性数据的赋值方式1.行业类型2.天气状况3.风向情况4.温度数据5.时间数据数据预处理符号说明代码实现结论说明缺失值的处理方式通过筛查,发现行业表中各类行业均缺失2021年1月26日的数据,对此
  • 2024-05-20P8624 [蓝桥杯 2015 省 AB] 垒骰子
    原题链接题解code#include<bits/stdc++.h>usingnamespacestd;#definelllonglongconstllmod=1e9+7;lla[7][7]={0},e[7]={0};voidcf1(){lltem[7]={0};for(inti=1;i<=6;i++){for(intj=1;j<=6;j++){t
  • 2024-05-16B. Omkar and Heavenly Tree
    原题链接题解真的bt啊由于m没有限制所有测试用例的总和,所以m可以近似看为1e9,也就是说,除了输入以外,不能有任何对m的处理(常数乘上1e9)考虑菊花图,任意两点之间最多只有一个陌生点,而且\(m\ltn\)所以找出那个没有出现过的中间点,作为菊花图的中心md!!构造题!!code#include<bits/std
  • 2024-03-31【Python】反转数字(整数、百分数、小数、分数)
    (本人蒟蒻,dalao勿喷)需要代码往下翻,最后的代码最简洁喔~题设:'''给定一个数,请将该数各个位上数字反转得到一个新数。整数反转是将所有数位对调。小数反转是把整数部分的数反转,再将小数部分的数反转,不交换整数部分与小数部分。分数反转是把分母的数反转,再把分子的数反转,不交换