当前位置: 首页 > news >正文

算法竞赛实用板子

一、声明

        自用版参考acwing,致力于实用、好用,板子中有个人理解,持续更新。

二、开板


        1.快排

void quick_sort(int q[],int l,int r)
{if(l>=r)return;              //出口int i=l-1,j=r+1,x=q[l+r>>1]; //分治方法while(i<j){do i++;while(q[i]<x);do j--;while(q[j]>x);if(i<j)swap(q[i],q[j]);}quick_sort(q,l,j);           //递归实现   quick_sort(q,j+1,r);
}

        2.差分

for(int i=1;i<=n;i++)b[i] = a[i] - a[i - 1];   //区别于前缀和/*  1 2 3  -->  1 1 1  */ b[l] += c;     b[r + 1] -= c;

         3.二分

int bin(int l, int r)
{while (l < r){int mid = l + r + 1 >> 1;     //注意两种形式,下-1 上+1  if (check(mid)) l = mid;                       else r = mid - 1;             //             下+1 上}                                 return l;                         //             return any
}

         4.分数取模(快速幂)

        主函数中(可实现 求解 (a / b) % M  ):

ll ans = a * ksm(b, M - 2) % M;

        定义快速幂函数: 

ll ksm(ll a, ll b){ll res = 1;while(b) {if(b & 1)                    // 如果当前b的二进制数字为1,即存在res = res * a % M;       // 结果乘上当前aa = a * a % M;               // 下一位的a的值(开平方)b >>= 1;                     // b的下一位二进制数}return res;
}

 具体原理讲解可参考:C++分数取模【固定模板+讲解】


to be continued !

相关文章:

算法竞赛实用板子

一、声明 自用版参考acwing&#xff0c;致力于实用、好用&#xff0c;板子中有个人理解&#xff0c;持续更新。 二、开板 1.快排 void quick_sort(int q[],int l,int r) {if(l>r)return; //出口int il-1,jr1,xq[lr>>1]; //分治方法while(i<j){do i;w…...

RPA中国 x UiPath | 第六届RPA极客挑战赛,3月16日上海开赛!

随着人工智能技术的不断进步以及数字化转型的深入&#xff0c;企业对于高效、精准、自动化的业务流程需求日益迫切。RPA技术作为连接人类工作与机器操作的桥梁&#xff0c;正逐渐从规则驱动发展为智能决策的助手。 由RPA中国联合UiPath共同主办的【第六届RPA极客挑战赛】将于2…...

算法打卡day5|哈希表篇01|Leetcode 242.有效的字母异位词 、19.删除链表的倒数第N个节点、202. 快乐数、1. 两数之和

哈希表基础知识 哈希表 哈希表关键码就是数组的索引下标&#xff0c;然后通过下标直接访问数组中的元素&#xff1b;数组就是哈希表的一种 一般哈希表都是用来快速判断一个元素是否出现集合里。例如要查询一个名字是否在班级里&#xff1a; 要枚举的话时间复杂度是O(n)&…...

『python爬虫』xpath变化导致无法找到指定元素(持续更新中~)

目录 xpath变化的原因1. 语言设置2. 窗口大小n. 待添加~总结 欢迎关注 『python爬虫』 专栏&#xff0c;持续更新中 欢迎关注 『python爬虫』 专栏&#xff0c;持续更新中 xpath变化的原因 XPath 可能会出现变化的原因有很多&#xff0c;以下是一些常见的情况&#xff1a; 网页…...

人大金仓数据库Kingbase服务SQL基础操作手册

1 kingbase服务 1.1 查看kingbase数据库服务进程 ps -ef|grep kingbase1.2 命令启动kingbase数据库服务 # /opt/Kingbase/ES/V8 为金仓安装目录 # /opt/Kingbase/ES/V8/data 为金仓数据目录 # sys_ctl是数据库服务器启停命令&#xff0c;通过-D选项来来指定数据库数据目录 #…...

赎金信00

题目链接 赎金信 题目描述 注意点 magazine中的每个字符只能在ransomNote中使用一次ransomNote和magazine由小写英文字母组成 解答思路 因为ransomNote和magazine由小写英文字母组成&#xff0c;所以使用大小为26的数组存储magazine中a~z对应出现的次数&#xff0c;ransom…...

如何运行github上的项目

为了讲明白这个过程&#xff0c;特意做了一个相当来说比较好读懂的原理图&#xff0c;希望和我一样初学的小伙伴也能很快上手哈&#x1f60a; 在Github中找到想要部署的项目&#xff0c;这里以BartoszJarocki/CV&#xff08;线上简历&#x1f4c4;&#xff09;项目为例 先从头…...

机器学习-02-机器学习算法分类以及在各行各业的应用

总结 本系列是机器学习课程的第02篇&#xff0c;主要介绍机器学习算法分类以及在各行各业的应用 本门课程的目标 完成一个特定行业的算法应用全过程&#xff1a; 定义问题&#xff08;Problem Definition&#xff09; -> 数据收集(Data Collection) -> 数据分割(Data…...

Java项目学习

一、Java项目学习 1.1 瑞吉外卖(项目提供的资料没笔记) 视频资源&#xff1a;https://www.bilibili.com/video/BV13a411q753/?p1 本人git项目地址&#xff1a;https://gitee.com/xx-xuxin/reggie_take_out.git 瑞吉外卖Day01~Day06没讲的功能&#xff08;全功能实现&#xf…...

npm run dev和npm run serve两个命令的区别

npm run dev和npm run serve两个命令的区别 前端开发过程中运行Vue项目的时候&#xff0c;有时候使用npm run serve命令可以启动项目&#xff0c;有时候却会报错&#xff1b;有时候使用npm run dev命令可以启动项目&#xff0c;有时候却也会报错。是什么原因造成这种情况呢&am…...

ui设计:利用即使设计设计出漂亮样式

目录 一、基本操作 二、具体介绍 6-1 填充图片 6-2 填充色 6-3 图标 右边栏基础设置 右边栏导出​编辑 一、基本操作 二、具体介绍 6-1 填充图片 选择其一图片填充 6-2 填充色 6-3 图标 右边栏基础设置 右边栏导出...

[unity]lua热更新——个人复习笔记【侵删/有不足之处欢迎斧正】

一、AssetBundle AB包是特定于平台的资产压缩包&#xff0c;类似于压缩文件 相对于RESOURCES下的资源&#xff0c;AB包更加灵活轻量化&#xff0c;用于减小包体大小和热更新 可以在unity2019环境中直接下载Asset Bundle Browser 可以在其中设置关联 AB包生成的文件 AB包文件…...

Springboot日常总结-@RestController和@Controller的区别

RestController和 Controlle是两种不同的控制器实现&#xff0c;它们的主要区别在于如何处理返回的数据和是否支持跳转到视图页面。 Controller 是一个基本的控制器注解&#xff0c;它允许你将一个类标记为一个Spring MVC控制器处理器。使用 Controller 的类中的方法可以直接返…...

MongoDB之客户端工具与核心概念及基本类型篇

MongoDB之客户端工具与核心概念及基本类型篇 文章目录 MongoDB之客户端工具与核心概念及基本类型篇1. MongoDB是什么?1. 关于MongoDB2. 相关客户端工具1. MongoDB Compass2. Studio 3T3. Navicat for MongoDB4. NoSQL Manager for MongoDB Professional 2.MongoDB相关概念2.1 …...

Essential C++ 编程基础

Essential C 前言1.1 如何撰写 C程序1.2 对象的定义与初始化1.3 撰写表达式1.4 条件语句和循环语句1.5 如何运用Array和Vector1.6 指针带来弹性1.7 文件的读写 前言 通过Essential C笔记的形式对C相关重点知识进行汇总&#xff0c;读者通读此系列文章就可以轻松的把该语言基础捡…...

07 Qt自绘组件:图片预览小组件ImageViewer

系列文章目录 01 Qt自定义风格控件的基本原则-CSDN博客 02 从QLabel聊起&#xff1a;自定义控件扩展-图片控件-CSDN博客 03 从QLabel聊起&#xff1a;自定义控件扩展-文本控件-CSDN博客 04 自定义Button组件&#xff1a;令人抓狂的QToolButton文本图标居中问题-CSDN博客 0…...

Groovy(第九节) Groovy 之单元测试

JUnit 利用 Java 对 Song 类进行单元测试 默认情况下 Groovy 编译的类属性是私有的,所以不能直接在 Java 中访问它们,必须像下面这样使用 setter: 编写这个测试用例余下的代码就是小菜一碟了。测试用例很好地演示了这样一点:用 Groovy 所做的一切都可以轻易地在 Java 程序…...

gprMax3.0随机介质建模

此处利用gprMax建立随机介质模型,采用matlab生成随机数组,保存为HDF5文件,此处为全代码,无需修改即可运行。在gprMax输入文件中使用#geometry_objects_read:读入自定义的随机模型 此文参考其他博主的自定义几何形状模块gprMax3.0建模时如何自定义目标的几何形状_#geomet…...

自动驾驶---行业发展及就业环境杂谈

进入21世纪以来&#xff0c;自动驾驶行业有着飞速的发展&#xff0c;自动驾驶技术&#xff08;L2---L3&#xff09;也逐渐落地量产到寻常百姓家。虽然最早期量产FSD的特斯拉有着深厚的技术积累&#xff0c;但是进入2010年以后&#xff0c;国内的公司也逐渐发展起来自己的自动驾…...

Matlab 矩阵基础

Matlab 基础 MATLAB 是“矩阵实验室matrix laboratory”的缩写。其他编程语言大多一次处理一个数字&#xff0c;MATLAB 主要用于处理整个矩阵和数组。 所有 MATLAB 变量都是多维数组&#xff0c;无论数据类型如何。矩阵是常用于线性代数的二维数组。 若要创建一个包含单行中…...

从零开始:在Windows 10上配置PyTorch 1.9.0 + torchtext 0.10.0(CUDA 11.1版)完整教程

从零开始&#xff1a;在Windows 10上配置PyTorch 1.9.0 torchtext 0.10.0&#xff08;CUDA 11.1版&#xff09;完整教程 深度学习框架PyTorch因其灵活性和易用性广受欢迎&#xff0c;而torchtext作为其自然语言处理的重要扩展库&#xff0c;为文本数据处理提供了强大支持。本文…...

春秋云境CVE-2021-42013

1.阅读靶场介绍 这里主要是得到路径穿越和命令执行 这两个关键字眼 这里说点博主打靶场的心得 就是首先是根据靶场介绍我们会得到大致方向 如果打不出来的话我们可以去找度娘 再然后就是去把介绍的文字喂给ai看看ai给到什么建议 最后就是找github看看有没有了 如果都没有…...

Magnet2Torrent高效转换指南:磁力链接永久保存的智能解决方案

Magnet2Torrent高效转换指南&#xff1a;磁力链接永久保存的智能解决方案 【免费下载链接】Magnet2Torrent This will convert a magnet link into a .torrent file 项目地址: https://gitcode.com/gh_mirrors/ma/Magnet2Torrent 你有没有这样的经历&#xff1f;辛辛苦苦…...

AI Agent行动规划算法:动态环境下的最优决策生成

AI Agent行动规划算法:动态环境下的最优决策生成 1. 引言 在人工智能技术飞速发展的今天,AI Agent(智能体)已经成为了连接理论与实践的关键桥梁。从自动驾驶汽车到智能客服机器人,从游戏AI到工业自动化控制,AI Agent正在以前所未有的方式改变着我们的生活和工作方式。然…...

【研报320】2026年北京车展核心看点前瞻:自主高阶智驾+自研芯片,合资拥抱中国方案

本报告提供限时下载&#xff0c;请查看文后提示以下仅为报告部分内容&#xff1a;摘要&#xff1a;2026年北京车展恰逢L3自动驾驶规模化商用元年&#xff0c;聚焦自主、新势力、合资三大阵营变革。自主品牌密集兑现技术&#xff0c;华为乾崑智驾全面下沉&#xff0c;比亚迪、吉…...

AI专著撰写必备!实测8款AI工具,快速生成20万字专著且低查重率!

研究者专著创作困境与AI工具解决方案 对于多数研究者而言&#xff0c;编写学术专著常常面临最大的挑战&#xff0c;便是“有限的精力”与“无限的需求”之间的矛盾。撰写一本专著通常需要3到5年&#xff0c;甚至更长的时间&#xff0c;而研究者们平常还需要完成教学、科研项目…...

Pixel Mind Decoder 集成ChatGPT实战:构建多轮对话情绪感知智能体

Pixel Mind Decoder 集成ChatGPT实战&#xff1a;构建多轮对话情绪感知智能体 1. 情绪感知智能体的商业价值 在客服、心理咨询和教育陪伴等场景中&#xff0c;对话系统的情绪感知能力直接影响用户体验和业务效果。传统对话系统往往只关注语义理解&#xff0c;而忽视了情绪这一…...

Dify插件调试效率提升300%:Chrome DevTools深度联动+本地热重载调试全链路揭秘

第一章&#xff1a;Dify插件开发入门与核心架构解析Dify 插件机制是其扩展能力的核心支柱&#xff0c;允许开发者以标准化方式接入外部服务、增强 LLM 应用的上下文感知与执行能力。插件基于 OpenAPI 3.0 规范定义接口契约&#xff0c;并通过 Dify 平台统一注册、鉴权与编排&am…...

Video Station for DSM 7.2.2:解决群晖新版系统视频管理兼容性问题的完整方案

Video Station for DSM 7.2.2&#xff1a;解决群晖新版系统视频管理兼容性问题的完整方案 【免费下载链接】Video_Station_for_DSM_722 Script to install Video Station in DSM 7.2.2 and DSM 7.3 项目地址: https://gitcode.com/gh_mirrors/vi/Video_Station_for_DSM_722 …...

智能社交媒体情感分析:如何用VADER解决非正式文本识别难题

智能社交媒体情感分析&#xff1a;如何用VADER解决非正式文本识别难题 【免费下载链接】vaderSentiment VADER Sentiment Analysis. VADER (Valence Aware Dictionary and sEntiment Reasoner) is a lexicon and rule-based sentiment analysis tool that is specifically attu…...