++
  • 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:输
  • 2024-08-16Linux中yum、vim、gcc/g++的使用
    目录一、Linux软件包管理器yum什么是软件包关于rzsz查看软件包★如何安装软件★如何卸载软件★Linux开发工具二、Linux编译器-vim使用vim的基本概念vim的基本操作vim正常模式命令集vim末行模式命令集vim操作总结如果在vim界面不小心按了Ctrl+Z怎么处理批
  • 2024-08-16比较好用的,偏免安装绿色版的工具软件
    作者:KaneCao链接:https://www.zhihu.com/question/356224162/answer/2577665684来源:知乎1.截图工具-Snipate/FSCapturesnipate官网:https://zh.snipaste.com/让Snipaste帮你提高工作效率;Snipaste是一个简单但强大的截图工具,也可以让你将截图贴回到屏幕上!下载并打开Snipaste
  • 2024-08-16运算符
    +,-,*,/,%,++,--,+=,-=,*=,/=,a>b?c:d;类型转换隐式转换:小转大,short,char>>int>>long>>longlong>>float>>double,short和char运算时会转换成int类型强制转换:字符相加根据Ascii字码表++,--单独加在变量前后没有区别Windows系统中前缀优先于后缀,mac和Linux系统中前缀同等于后缀+=,-=,*=,/=,%=性质相
  • 2024-08-16数组
    数组是一个能存储多个同种类型数据的容器//数组作为参数传递:传递时传递的仅仅是存放首地址的变量,传递时注意将数组长度一同传递//索引越界:索引从0~length-1#include<stdio.h>voidgetArr(intarr[],intlen);intmain(){intarr1[]={1,2,3,4,5};intlen=sizeof(arr1)/siz
  • 2024-08-15DFS深度优先搜索
    1、介绍DFS即DepthFirstSearch,深度优先搜索。简单地理解为一条路走到黑。以该图为例:先走A,然后到B,到了B有三种情况,意味着这条路还没走完,那我就接着走,从B走到E,走到E之后没路了。那我就回溯到B,为什么呢?因为我原本走到B的时候就有三种情况,但是刚刚只走了一种情况,因此我
  • 2024-08-15C语言学习-- 运算符
    提示:在C语言编程中,算术、关系和逻辑运算符是基础且不可或缺的工具。目录前言5.1算术运算符5.1.1介绍5.1.2算术运算符一览5.1.3案例演示5.1.4细节说明5.1.5自增,自减课堂练习15.1.6课堂练习25.2关系运算符(比较运算符)5.2.1介绍5.2.2关系运算符一览5.2.3案例