回文 算法 日期noip
「回忆录」NOIP2022游寄
~~都已经过去半年了才来更的屑~~ 距离 CSP 还有一周左右的时间,我们停课了,然后来了东校。 Al:“为了庆祝我们在一起学习,下午我们考试!” ??? 好像就呆了 $1$ 天半,因为疫情,我们要提前出发去日照,然后中午家长们紧急把东西送来,Al 跑回一区把 ycc 和 zxs 接来,三区的 wx ......
青岛市程序设计竞赛冲刺⑥(2023第四届上海市青少年算法竞赛小学组试题)
2.幸运数 原题: 原代码: #include<bits/stdc++.h> #define ll long long using namespace std; const int N = 1e7+5; ll a[505]={0,6,8,66,68,86,88,666,668,686,688,866 ......
全国信息学奥林匹克联赛(NOIP2011)复赛提高组day2
一、计算系数 首先对题目多项式进行简化分析 (x+y)2=x2+2xy+y2 (x+y)3=x3+3x2y+3xy2+y2 (x+y)4=x4+4x3y+6x2y2+4xy3+y4 不难发现它们的系数组成了一个杨辉三角 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 …… 进一步带入则可 ......
【算法】LRU 最近最少使用算法
1 前言 上节我们介绍了几个页面替换算法,也就是一种淘汰策略,这节我们就看一种新的算法:LRU哈。 2 LRU LRU(Least Recently Used,最近最少使用)算法根据页面的历史请求记录来进行淘汰页面,其核心思想是 “如果页面数据最近被访问过,那么将来被访问的几率也更高”。基于这个思想 ......
比较算法(1)
1、介绍 需求:有时候需要比较两个文本,看有什么异同。 在渗透过程中分析响应变化很实用,可以快速定位不同区域,比如在xss分析过程,或者定位一次性token 另一个场景,是对文件与文件的字节进行比较,用于学习文件结构,以及分析图片木马、加壳、后缀名修改等操作的影响 比较算法,将两个文本分别进行切割成 ......
「NOIP2008」笨小猴
笨小猴的词汇量很小,所以每次做英语选择题的时候都很头疼。但是他找到了一种方法,经试验证明,用这种方法去选择选项的时候选对的几率非常大! 这种方法的具体描述如下:假设maxn是单词中出现次数最多的字母的出现次数,minn是单词中出现次数最少的字母的出现次数,如果maxn-minn是一个质数,那么笨小猴 ......
余弦相似度算法进行客户流失分类预测
余弦相似性是一种用于计算两个向量之间相似度的方法,常被用于文本分类和信息检索领域。具体来说,假设有两个向量A和B,它们的余弦相似度可以通过以下公式计算: 其中,dot_product(A, B)表示向量A和B的点积,norm(A)和norm(B)分别表示向量A和B的范数。如果A和B越相似,它们的余弦 ......
Java 实现 FIFO 缓存算法
Java 实现 FIFO 缓存算法 一、什么是 FIFO FIFO(First In, First Out)是一种常见的数据结构,也叫做先进先出队列。它的特点是先进入队列的数据最先出队。 类似于现实中排队买东西的场景,先来的人先排队,先买完商品的人先离开。 在计算机领域,FIFO常用于缓存管理、进程 ......
Prophet 时间序列预测算法
Prophet 时间序列预测算法 一、背景 时间序列预测是一种预测未来数据的方法,对于时间序列的分析,我们可以采用传统的统计学方法,例如 ARIMA、Exponential Smoothing等,这些方法通过分析过去的数据建立模型来预测未来的趋势,但是这些方法有一个限制就是必须满足某些假设条件,例如 ......
Java 实现 LRU 缓存算法
Java 实现 LRU 缓存算法 一、什么是 LRU LRU(Least Recently Used,最近最少使用)是一种缓存算法,其核心思想是将最近最少使用的缓存项移除,以便为更常用的缓存项腾出空间。 在实际应用中,LRU 算法被广泛用于缓存和页面置换。 二、Java 实现 LRU 缓存算法 在 ......
剑指 Offer II 020. 回文子字符串的个数
题目链接:剑指 Offer II 020. 回文子字符串的个数 方法一:动态规划 解题思路 状态表示:$dp[i][j]$ 表示子字符串 $s[i,j]$ 是否为回文串; 状态计算: 若 $s[i]$ != $s[j]$,显然不是; 若 $s[i]$ == $s[j]$,有以下几种可能: $i$ = ......
【算法】哈希算法
1 前言 本节我们来看我们常用的哈希算法哈。 2 为什么要有哈希 假设我们要设计一个系统来存储将员工手机号作为主键的员工记录,并希望高效地执行以下操作: 插入电话号码和相应的信息。(插入) 搜索电话号码并获取信息。(查找) 删除电话号码及相关信息。(删除) 我们可以考虑使用以下数据结构来维护不同电话 ......
【算法】页面替换算法
1 前言 功能:当缺页中断发生,需要调入新的页面而内存已满时,选择内存当中哪个物理页面被置换。 目标:尽可能地减少页面的换进换出次数(即缺页中断的次数)。具体来说,把未来不再使用的或短期内较少使用的页面换出,通常只能在局部原理指导下依据过去的统计数据来进行预测。 2 最优页面替换算法 基本思路:当一 ......
从分布式共识算法到区块链共识机制
英文原文链接:https://medium.com/datadriveninvestor/from-distributed-consensus-algorithms-to-the-blockchain-consensus-mechanism-75ee036abb65 From Distributed ......
[NOIP2017 普及组] 跳房子
这是一道很复杂有趣的题目 题目描述 跳房子,也叫跳飞机,是一种世界性的儿童游戏,也是中国民间传统的体育游戏之一。 跳房子的游戏规则如下: 在地面上确定一个起点,然后在起点右侧画 n 个格子,这些格子都在同一条直线上。每个格子内有一个数字(整数),表示到达这个 格子能得到的分数。 玩家第一次从起点开始 ......
Stoer-Wagner 算法
刚才可能是有用算法。这次是无用算法。 无向图的最小割是最小的边集使得割掉后不连通。Stoer-Wagner 算法可以在 $O(n^3)$ 复杂度内解决无向图最小割。或者说实际上是 $O(nm\log m)$。 首先有一句废话:对于任意两点 $s,t$ ,割掉最小割后,或者处于一个连通块,或者处于不同 ......
基础-函数-日期函数
curdate:当前日期 select curdate(); curtime:当前时间 select curtime() now:当前日期和时间 select now() YEAR , MONTH , DAY:当前年、月、日 select YEAR(now()); select MONTH(now( ......
23.5.2 NOIP2011 Day1提高游记
今天做的比较得愉快快呢,除了第三题hh 1.铺地毯 这题我不做太多评价,纯纯的一道大水题。 注意遍历数据的时候倒着遍历,还有就是不能用二维数组,会MLE。 code: 1 #include<bits/stdc++.h> 2 #define N 10005 3 using namespace std; ......
06 ETH-挖矿算法
《区块链技术与应用》课程链接:https://www.bilibili.com/video/BV1Vt411X7JF/?spm_id_from=333.337.search-card.all.click 06 ETH-挖矿算法 挖矿是保障区块链安全的一个重要手段。 Blockchain is sec ......
项目实践:我在嵌入式控制上对PID算法的理解
关于PID算法的碎碎念(我也不知道咋说明)。 笔者:czg-bky 全文:我在嵌入式控制上对PID算法的理解 - czg-bky - 博客园 (cnblogs.com) ......
分别使用SAD匹配,NCC匹配,SSD匹配三种算法提取双目图像的深度信息
1.算法仿真效果 matlab2022a仿真结果如下: 2.算法涉及理论知识概要 深度学习的蓬勃发展得益于大规模有标注的数据驱动,有监督学习(supervised learning)推动深度模型向着性能越来越高的方向发展。但是,大量的标注数据往往需要付出巨大的人力成本,越来越多的研究开始关注如何在不 ......
最近公共祖先 Tarjan算法
例题:洛谷P3379 【模板】最近公共祖先(LCA) https://www.luogu.com.cn/problem/P3379 tarjan算法是利用了并查集来求LCA的,时间复杂度比倍增低,是O(n+m) #include<iostream> #include<vector> #include ......
算法3:质数的个数
一、质数的定义 质数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。 二、判断质数的方法 1 for(int j = 2; j < i; j ++) { 2 if(i % j == 0) 3 break; 4 if(i == j) 5 cout << i << " "; 6 } 三 ......
最近公共祖先 倍增算法
求最近公共祖先(Lowest Common Ancestor,LCA) 例题:洛谷P3379 【模板】最近公共祖先(LCA) https://www.luogu.com.cn/problem/P3379 基本思路就是先用倍增把两点升到同一深度,然后倍增来找最近公共祖先。 其中fa数组是关键 #inc ......
推荐算法的知识框架【更新中】
几年前刚进入行业时,就简单认为不过是wide&deep做精排,双塔FM做召回做粗排,再加上一些周边项目,比如冷启动和多模型融合调参,就组成了一个完整的推荐系统算法部分。再回头思考这一切,不再迷失在各式各样的实现细节中,关注本质,有了更广泛的认识,分为一下几个部分。 1. 建模方法 多阶段的推荐系统如 ......
整理一些学过的数据结构和算法
匆匆忙忙中学了很多算法,但基本都是打个板子~~就跑路了~~,有些算法有个人比较深入和独特的见解,但大部分,只是实现例题的需求,对算法的作用似懂非懂,所以写篇博客整理一下。 无旋平衡树(treap) 高级数据结构:树和堆 可以允许的操作:插入,删除,查询某数排名,查询某排名的树(第K大),求某数的前驱 ......
【字节二面算法】NO662 二叉树最大宽度
[字节二面算法] 662. 二叉树最大宽度 给你一棵二叉树的根节点 root ,返回树的 最大宽度 。 树的 最大宽度 是所有层中最大的 宽度 。 每一层的 宽度 被定义为该层最左和最右的非空节点(即,两个端点)之间的长度。将这个二叉树视作与满二叉树结构相同,两端点间会出现一些延伸到这一层的 nul ......
「学习笔记」SPFA 算法的优化
与其说是 SPFA 算法的优化,倒不如说是 Bellman-Ford 算法的优化。 栈优化 将原本的 bfs 改为 dfs,在寻找负环时可能有着更高效的效率,但是最坏复杂度为指数级别。 void dfs_spfa(int u) { if (fg) return; vis[u] = true; for ......
线索化二叉树的递归算法
// 线索化二叉树的递归算法 #include <stdio.h> #include <malloc.h> typedef struct BiTNode { int data; struct BiTNode *lchild, *rchild; // 存储二叉树的左孩子和右孩子 } BiTNode, ......