• 2024-10-11树分治
    点分树关于模拟赛\(T2\)考点分树这件事。点分治点分树被称为动态点分治,所以下面先介绍点分治。P3806【模板】点分治1点分治板子。考虑一个树上的路径,如果已知所有\(dis,\)可以按是否经过根划分为:经过根:\(dis[u]+dis[v],\)这个方便用桶处理。没有经过根:经过了根的子
  • 2024-10-0720241006
    BacktoSchool'24P1-Kicking按照题意模拟即可#include<bits/stdc++.h>usingnamespacestd;#defineintlonglongconstintN=1e5+5;intn,m,k;charc;vector<int>sum[2][N];vector<int>a[N];signedmain(){cin>>
  • 2024-09-01ABC 369
    ABC369刚才翻上次写的abc366题解,发现语言挺抽象,导致自己都快看不懂了,这回写好点这段时间第一次Rated,情况一般吧,F忘给同一个\(x\)的所有\(y\)排序了,今天(9.1)早上突然看出来了。G没有细看,以为是个博弈论,现在才发现是个简单贪心369这数挺吉利哈哈,济南好像
  • 2024-08-27L1-103 整数的持续性 分数 20
    #include<bits/stdc++.h>usingnamespacestd;#defineintlonglongintfunc(intn){intres=0;while(n>=10){inta=n;vector<int>num;while(a){num.push_back(a%10);
  • 2024-08-1008-09 题解
    08-09题解A小水题思路假设我们选定了当前子序列的绝对众数\(x\),那么该序列里最多再放\(num_x-1\)个其他数字为了分出最少的子序列,肯定要让每个子序列在拥有绝对众数的同时能消化尽量多的其他数字由此,可以得到一个贪心策略:每次取出出现次数最多的一个数字,消掉出现
  • 2024-08-06排序算法 选择排序 SelectSort -- C语言实现
    选择排序描述选择排序是一种简单直观的排序算法,无论什么数据进去都是O(n²)的时间复杂度。所以用到它的时候,数据规模越小越好。唯一的好处可能就是不占用额外的内存空间了。算法步骤首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置。再从剩余未排序元素中继续寻
  • 2024-07-04信息素养大赛题目 小旗手 AC代码分享
    /*AC*程序思路:*1.定义票数数组x,标记数组a,人数n,max1(最大值比较变量),maxi(最大值下标变量)*2.输入人数,票数数组的第一票*3.循环通过数学表达式((x[i-1]*37+33031)%n)+1递推计算票数并存入票数数组x*4.将a数组的x[i]位置+1(桶标记,将这个学号的获票数+1)*5.遍历a
  • 2024-04-10【学习笔记】树链剖分
    一、重链剖分1.定义&作用树链剖分用于解决在树上执行的操作,将树上操作变为区间操作。用区间来维护。2.主要思想&实现有一棵树然后,我们把边区分一下,有一些边是“重边”,其余的是“轻边”,像这样:(红边为重边,黑边为轻)重边和轻边如何确定呢?看每一个结点旁的红色数字,代表他
  • 2024-01-22动态规划(8) 编辑距离
    目录1035不相交的线53最大子数组和392判断子序列1035不相交的线弄清楚在求什么,实际上是在求最长公共子序列classSolution{public:intmaxUncrossedLines(vector<int>&nums1,vector<int>&nums2){intn=nums1.size();intm=nums2.size();
  • 2023-10-15【算法题】6939. 数组中的最大数对和
    题目:给你一个下标从0开始的整数数组nums。请你从nums中找出和最大的一对数,且这两个数数位上最大的数字相等。返回最大和,如果不存在满足题意的数字对,返回-1。示例1:输入:nums=[51,71,17,24,42]输出:88解释:i=1和j=2,nums[i]和nums[j]数位上最大的数字相等,且这
  • 2023-06-18Python os 模块练题
    题目1:递归输出目录结构需求描述要求输出E:\worksp_py\os_test下的文件结构参考实现defrecursion_file_info(path,indent=0,maxi=-1):'''按字典顺序输出目录结构:parampath:str路径:paramindent:int首次缩进空格——默认为0,一般不用改变:par
  • 2023-05-08AcWing 771. 字符串中最长的连续出现的字符
    AcWing771.字符串中最长的连续出现的字符1.地址https://www.acwing.com/problem/content/description/773/2.题解#include<iostream>#include<cstdio>#include<string>usingnamespacestd;intmain(){intn;intsum;intmax;int
  • 2023-04-2423-4-24--子序列--最长连续递增子序列
    给定一个顺序存储的线性表,请设计一个算法查找该线性表中最长的连续递增子序列。例如,(1,9,2,5,7,3,4,6,8,0)中最长的递增子序列为(3,4,6,8)。输入格式:输入第1行给出正整数n(≤105);第2行给出n个整数,其间以空格分隔。输出格式:在一行中输出第一次出现的最长连续递增子序列,数字
  • 2022-10-07手撕堆排序(含图解,代码)
    本篇重点1.什么是堆,有什么特性?2.堆排序概述3.堆排序图解4.代码5.堆排序时间复杂度/空间复杂度/稳定性6.堆排序/堆适用场景什么是堆1.堆是完全二叉树。一棵
  • 2022-10-06最长公共上升子序列
    已经快被这玩意搞疯了\(\mathcalO(n^3)\)做法解析:\(f[i][j]\)表示以\(b[j]\)结尾,字符串\(a[i]\)之前的公共上升子序列最大长度;显然:\(f[i−1][j]\leqf[i][j]\)
  • 2022-10-01难度中等-5. 最长回文子串
    以前也碰到过类似的题,用的是字符相加后基类排序的方法,现在用暴力破解法发现简单多了循环i从左边,j从右边开始,不停的判断i到j是否回文字符,如果是,那么当前i位置就是最长的循