AtCoder AGC #3 Virtual Participation

本文精选了算法竞赛中的几道经典题目,包括排序优化、数论筛选、序列操作计数、分形图案分析等,提供了详细的解题思路与算法实现技巧。

Havana真好听qwq

 

AB题就不写了 SB

C.BBuBBBlesort!

有一个长度为$n$的数列

你每次可以用两种操作

1.交换两个相邻元素

2.交换两个隔且仅隔了一个的元素

求把数列排成有序的,最少需要多少1操作

 

sol:显然,2操作并不会改变排序后元素所处位置的奇偶性

我们找到所有排序后位置与现在位置差为奇数的点,再除以2就可以了

 

D.Anticube

给出$n$个两两不同的数,选出一些数使得不存在两个数的积是完全立方数,求能选出的最大数量

 

sol:套路

把每个数分解质因数,求出他们每个质因数次数膜3的值

然后每次选择两个“互补”的数中较大的那个数就可以了

因为数不超过${10^{10}}$,可以用不超过${10^{\frac{10}{3}}}$的质数来筛

筛掉的这些数可以求出最简表示和补数

剩下的数都可以分成不超过两个质因子

然后就完全平方判一下就可以了

 

E.Sequential operations on Sequence

一个由$1,2,3,4,...,n$组成的数列,有$Q$次操作,每次操作包含一个$q_i$表示将数列无限重复,然后取前$q_i$项组成一个新的数列

$q_i \leq 10 ^ {18}$

求最后数列中$1$到$n$各出现了多少次

 

sol:

首先,如果前面的$q_i$大于后面的,那肯定是一次无效操作,我们可以删去

于是$q_i$递增

然后...就是神仙操作了

我们记一个$f_x$表示“第$x$次操作后的序列在最后的序列中出现了多少次”

显然,第$i$次操作后的序列肯定是由很多次第$i - 1$次操作后的序列加上一段第$i - 1$次操作后的序列的前缀组成

完整的部分显然是可以直接拿$f_{x- 1}$转移到$f_x$的

考虑剩下的一段前缀

剩下的一段前缀,肯定是由$x - 1$之前的某个操作后的序列搞出来的

我们可以二分这个序列是第几次操作后的序列

二分得到一个$ans$,它会对这个前缀产生一些贡献,可能还会再剩下一些

但剩下的不会超过$len(prefix)$ % $len(sequence(ans))$

然后就是一个结论,一个数膜一个比它小的数,最多膜log次

于是就是$O(log^2n)$的

 

F.Fraction of Fractal

给你一个黑白图案和一个分形次数$k$

每次分形是用$k-1$次分形当做“黑格”,大白方块当做“白格”如初始图案那样拼起来

问最后有多少黑色连通块,取膜

$k \leq 10^{18}$

 

sol:

这么大 矩阵快速幂

比上一题好想一点...

我们设$x$为初始黑块数

首先,如果分形边界没有黑格,直接就是$x^{k}$

只有当它上下左右连通的时候才会产生影响

1.如果全都连通,直接就是$1$

2.如果仅有上下连通或者左右连通

因为旋转90度的话这两个就是一种情况了,我们现在只考虑左右连通的情况

我们可以dp

$f[i]$表示$i$阶分形黑色连通块数量

$g[i]$表示$i$阶分形有多少个联通块满足,当它跟它的复制左右拼起来时会和一个联通块连在一起

转移就是$f[i] = f[i - 1] * x - g[i - 1] * w$

然后$g[i] = f[i -1] * y$

$w$表示原图中有多少对左右相邻的黑格

$y$表示原图中最左边一列和最右边一列拼起来有多少黑色相邻

这样就是一个齐次递推式,我们可以矩阵乘法

 

转载于:https://www.cnblogs.com/Kong-Ruo/p/9676621.html

基于STM32 F4的永磁同步电机无位置传感器控制策略研究内容概要:本文围绕基于STM32 F4的永磁同步电机(PMSM)无位置传感器控制策略展开研究,重点探讨在不依赖物理位置传感器的情况下,如何通过算法实现对电机转子位置和速度的精确估计与控制。文中结合嵌入式开发平台STM32 F4,采用如滑模观测器、扩展卡尔曼滤波或高频注入法等先进观测技术,实现对电机反电动势或磁链的估算,进而完成无传感器矢量控制(FOC)。同时,研究涵盖系统建模、控制算法设计、仿真验证(可能使用Simulink)以及在STM32硬件平台上的代码实现与调试,旨在提高电机控制系统的可靠性、降低成本并增强环境适应性。; 适合人群:具备一定电力电子、自动控制理论基础和嵌入式开发经验的电气工程、自动化及相关专业的研究生、科研人员及从事电机驱动开发的工程师。; 使用场景及目标:①掌握永磁同步电机无位置传感器控制的核心原理与实现方法;②学习如何在STM32平台上进行电机控制算法的移植与优化;③为开发高性能、低成本的电机驱动系统提供技术参考与实践指导。; 阅读建议:建议读者结合文中提到的控制理论、仿真模型与实际代码实现进行系统学习,有条件者应在实验平台上进行验证,重点关注观测器设计、参数整定及系统稳定性分析等关键环节。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值