下取整常用处理方法及例题

本文将介绍下取整常用处理方法。不细讲。

整除分块

对于式子 ∑ i ⌊ a i ⌋ \sum\limits_{i}\left\lfloor\dfrac{a}{i}\right\rfloor iia,是一系列分数取整求和,其中分母是求和枚举变量。此时就可以使用整除分块。时间复杂度 O ( n ) O(\sqrt n) O(n )。(一维整除分块)

原理是 ⌊ n i ⌋ \left\lfloor\dfrac{n}{i}\right\rfloor in 最多只有 2 n 2\sqrt n 2n 个取值。

对于式子 ∑ i ∑ j ⌊ a i ⌋ ⌊ b i ⌋ \sum\limits_{i}\sum\limits_{j}\left\lfloor\dfrac{a}{i}\right\rfloor\left\lfloor\dfrac{b}{i}\right\rfloor ijiaib,使用二维整除分块。相当于两个下取整的断点只有 4 n 4\sqrt n 4n 个,时间复杂度为 O ( n ) O(\sqrt n) O(n )。实际上可以推广到 m m m 维整除分块,时间复杂度为 O ( m n ) O(m\sqrt n) O(mn )

还有式子 ∑ i ⌊ n a i + b ⌋ \sum\limits_{i}\left\lfloor\dfrac{n}{ai+b}\right\rfloor iai+bn,此时也可使用整除分块。

例题1

P2260 [清华集训2012] 模积和

∑ i = 1 n ∑ j = 1 m ( n m o d i ) × ( m m o d j ) , i ≠ j \sum_{i=1}^{n} \sum_{j=1}^{m} (n \bmod i) \times (m \bmod j), i \neq j i=1nj=1m(nmodi)×(mmodj),i=j

m o d 19940417 \mod 19940417 mod19940417 的值。


这里有一个常用技巧: a % b = a − b ⌊ a b ⌋ a\%b=a-b\left\lfloor\dfrac{a}{b}\right\rfloor a%b=abba

这里把式子变成
( ∑ i = 1 n ( n − i ⌊ n i ⌋ ) ( ∑ j = 1 m ( m − i ⌊ m i ⌋ ) ) \left(\sum_{i=1}^{n}(n-i\left\lfloor\dfrac{n}{i}\right\rfloor\right)\left( \sum_{j=1}^{m} (m-i\left\lfloor\dfrac{m}{i}\right\rfloor)\right) (i=1n(niin)(j=1m(miim))

左右两边分别处理。

由于 n − i ⌊ n i ⌋ n-i\left\lfloor\dfrac{n}{i}\right\rfloor niin 中有下取整,且分母是 i i i,所以可以使用整除分块。时间复杂度 O ( n ) O(\sqrt n) O(n )

一些恒等式

下面给出几个下取整恒等式。

  • gcd ⁡ ( a , b ) = 1 \gcd(a,b)=1 gcd(a,b)=1,则有 2 ∑ i = 0 b − 1 ⌊ i a b ⌋ = ( a − 1 ) ( b − 1 ) 2\sum\limits_{i=0}^{b-1}\left\lfloor\dfrac{ia}{b}\right\rfloor=(a-1)(b-1) 2i=0b1bia=(a1)(b1)
  • 对于正整数 n , m , a , b ( a > b ) n,m,a,b(a>b) n,m,a,b(a>b),有 ∑ i = 0 m − 1 ⌊ n + i a + b m a ⌋ = ⌊ n + b a ⌋ \sum\limits_{i=0}^{m-1}\left\lfloor\dfrac{n+ia+b}{ma}\right\rfloor=\left\lfloor\dfrac{n+b}{a}\right\rfloor i=0m1man+ia+b=an+b
  • 对于 x ∈ R , n ∈ N + x\in\R,n\in\N^+ xR,nN+,有 ∑ i = 0 n − 1 ⌊ x + i n ⌋ = ⌊ n x ⌋ \sum\limits_{i=0}^{n-1}\left\lfloor x+\dfrac{i}{n}\right\rfloor=\left\lfloor nx\right\rfloor i=0n1x+ni=nx

例题2

∑ i = 1 b ∑ j = 1 b ⌊ i j a b ⌋ \sum\limits_{i=1}^b\sum\limits_{j=1}^b\lfloor\dfrac{ija}{b}\rfloor i=1bj=1bbija

其中 b ∣ n , b ∣ m b\mid n,b\mid m bn,bm
T T T 组数据
答案 m o d 998244353 \bmod\space998244353 mod 998244353


我们先看如何求 ∑ i = 1 n ⌊ i a b ⌋ \sum\limits_{i=1}^n\lfloor\dfrac{ia}{b}\rfloor i=1nbia,其中 b ∣ n b\mid n bn

首先求 g = gcd ⁡ ( a , b ) g=\gcd(a,b) g=gcd(a,b),原式化为 ∑ i = 1 n ⌊ i a ′ b ′ ⌋ \sum\limits_{i=1}^n\lfloor\dfrac{ia'}{b'}\rfloor i=1nbia,其中 a ′ = a g , b ′ = b g a'=\dfrac ag,b'=\dfrac bg a=ga,b=gb

因为 b ∣ n b\mid n bn,所以 ∑ i = 1 n ⌊ i a ′ b ′ ⌋ = ∑ j = 0 n b ′ − 1 ∑ i = 1 b ′ ⌊ a ′ ( i + j b ′ ) b ′ ⌋ = ∑ j = 0 n b ′ − 1 ∑ i = 1 b ′ ( ⌊ i a ′ b ′ ⌋ + j a ′ ) = n a ′ ( n − b ′ ) 2 b ′ + n b ′ ∑ i = 1 b ′ ⌊ i a ′ b ′ ⌋ \sum\limits_{i=1}^n\lfloor\dfrac{ia'}{b'}\rfloor=\sum\limits_{j=0}^{\frac n{b'}-1}\sum\limits_{i=1}^{b'}\lfloor \dfrac{a'(i+jb')}{b'}\rfloor=\sum\limits_{j=0}^{\frac n{b'}-1}\sum\limits_{i=1}^{b'}\left(\lfloor\dfrac{ia'}{b'}\rfloor+ja'\right)=\dfrac{na'\left(n-b'\right)}{2b'}+\dfrac{n}{b'}\sum\limits_{i=1}^{b'}\lfloor\dfrac{ia'}{b'}\rfloor i=1nbia=j=0bn1i=1bba(i+jb)=j=0bn1i=1b(bia+ja)=2bna(nb)+bni=1bbia

问题转为求 ∑ i = 1 b ′ ⌊ i a ′ b ′ ⌋ \sum\limits_{i=1}^{b'}\lfloor\dfrac{ia'}{b'}\rfloor i=1bbia

由结论 1 1 1 ∑ i = 1 b ′ ⌊ i a ′ b ′ ⌋ = ( a ′ − 1 ) ( b ′ − 1 ) 2 + a ′ \sum\limits_{i=1}^{b'}\lfloor\dfrac{ia'}{b'}\rfloor=\dfrac{(a'-1)(b'-1)}{2}+a' i=1bbia=2(a1)(b1)+a

∑ i = 1 n ⌊ i a b ⌋ = n a ′ ( n − b ′ ) 2 b ′ + n b ′ ( a ′ ( b ′ + 1 ) 2 − b ′ − 1 2 ) = n ( a ′ n + a ′ − b ′ + 1 ) 2 b ′ = n ( a n + a − b + gcd ⁡ ( a , b ) ) 2 b \sum\limits_{i=1}^n\lfloor\dfrac{ia}{b}\rfloor=\dfrac{na'\left(n-b'\right)}{2b'}+\dfrac{n}{b'}\left(\dfrac{a'(b'+1)}{2}-\dfrac{b'-1}{2}\right)=\dfrac{n\left(a'n+a'-b'+1\right)}{2b'}=\dfrac{n\left(an+a-b+\gcd(a,b)\right)}{2b} i=1nbia=2bna(nb)+bn(2a(b+1)2b1)=2bn(an+ab+1)=2bn(an+ab+gcd(a,b))


看回原题

∑ i = 1 n ∑ j = 1 m ⌊ i j a b ⌋ = ∑ i = 1 n m ( i a m + i a − b + gcd ⁡ ( i a , b ) ) 2 b = − m n 2 + m n a ( m + 1 ) ( n + 1 ) 4 b + m 2 b ∑ i = 1 n gcd ⁡ ( i a , b ) \sum\limits_{i=1}^n\sum\limits_{j=1}^m\lfloor\dfrac{ija}{b}\rfloor=\sum\limits_{i=1}^n\dfrac{m\left(iam+ia-b+\gcd(ia,b)\right)}{2b}=-\dfrac{mn}{2}+\dfrac{mna\left(m+1\right)\left(n+1\right)}{4b}+\dfrac{m}{2b}\sum\limits_{i=1}^n\gcd(ia,b) i=1nj=1mbija=i=1n2bm(iam+iab+gcd(ia,b))=2mn+4bmna(m+1)(n+1)+2bmi=1ngcd(ia,b)

易得 ∑ i = 1 n gcd ⁡ ( i a , b ) = g ∑ i = 1 n gcd ⁡ ( i a ′ , b ′ ) = g ∑ i = 1 n gcd ⁡ ( i , b ′ ) \sum\limits_{i=1}^n\gcd(ia,b)=g\sum\limits_{i=1}^n\gcd(ia',b')=g\sum\limits_{i=1}^n\gcd(i,b') i=1ngcd(ia,b)=gi=1ngcd(ia,b)=gi=1ngcd(i,b)

同时 ∑ i = 1 n gcd ⁡ ( i , b ′ ) = n b ′ ∑ i = 1 b ′ gcd ⁡ ( i , b ′ ) \sum\limits_{i=1}^n\gcd(i,b')=\dfrac{n}{b'}\sum\limits_{i=1}^{b'}\gcd(i,b') i=1ngcd(i,b)=bni=1bgcd(i,b),因为 gcd ⁡ ( i , b ′ ) = gcd ⁡ ( i + b ′ , b ′ ) \gcd(i,b')=\gcd(i+b',b') gcd(i,b)=gcd(i+b,b)

∑ i = 1 b ′ gcd ⁡ ( i , b ′ ) = ∑ d ∣ b ′ d ∑ i = 1 b ′ [ gcd ⁡ ( i , b ′ ) = d ] = ∑ d ∣ b ′ d ∑ i = 1 b ′ d [ gcd ⁡ ( i , b ′ d ) = 1 ] = ∑ d ∣ b ′ d φ ( b ′ d ) = ∑ d ∣ b ′ φ ( d ) b ′ d \sum\limits_{i=1}^{b'}\gcd(i,b')=\sum\limits_{d\mid b'}d\sum\limits_{i=1}^{b'}[\gcd(i,b')=d]=\sum\limits_{d\mid b'}d\sum\limits_{i=1}^{\frac{b'}{d}}[\gcd(i,\frac{b'}{d})=1]=\sum\limits_{d\mid b'}d\varphi(\frac{b'}{d})=\sum\limits_{d\mid b'}\varphi(d)\frac{b'}{d} i=1bgcd(i,b)=dbdi=1b[gcd(i,b)=d]=dbdi=1db[gcd(i,db)=1]=dbdφ(db)=dbφ(d)db

显然 f ( x ) = ∑ d ∣ x φ ( d ) x d f(x)=\sum\limits_{d\mid x}\varphi(d)\frac{x}{d} f(x)=dxφ(d)dx 可以 O ( x ) O(\sqrt x) O(x ) 求出单点值。

最终答案为 = m n 4 b 2 ⋅ ( a b ( m + 1 ) ( n + 1 ) − 2 b 2 + 2 g 2 f ( b g ) ) =\dfrac{mn}{4b^2}\cdot\left(ab\left(m+1\right)\left(n+1\right)-2b^2+2g^2f(\frac{b}{g})\right) =4b2mn(ab(m+1)(n+1)2b2+2g2f(gb))

总的时间复杂度为 O ( T b ) O(T\sqrt b) O(Tb )

例题3

定义 f ( n ) = ∑ i = 1 n ⌊ n i ⌋ f(n)=\sum\limits_{i=1}^n\left\lfloor\dfrac{n}{i}\right\rfloor f(n)=i=1nin,特殊的, f ( 0 ) = 0 f(0)=0 f(0)=0

给出 m m m,你需要给出长度为 n n n 的自然数数列,使 ∑ i = 1 n ( f ( a i + 1 ) − f ( a i ) ) = m \sum\limits_{i=1}^n(f(a_i+1)-f(a_i))=m i=1n(f(ai+1)f(ai))=m

采用 SPJ \text{SPJ} SPJ 评测。

1 ≤ n ≤ 20 , 0 ≤ a i < 2 63 , 1 ≤ m ≤ 2 × 1 0 5 1\le n\le20,0\le a_i<2^{63},1\le m\le2\times10^5 1n200ai<263,1m2×105


这题不用什么技巧,直接爆算。

f ( n + 1 ) − f ( n ) = ∑ i = 1 n + 1 ⌊ n + 1 i ⌋ − ∑ i = 1 n ⌊ n i ⌋ = 1 + ∑ i = 1 n ( ⌊ n + 1 i ⌋ − ⌊ n i ⌋ ) = ∑ i = 1 n + 1 1 + n % i − ( n + 1 ) % i i \begin{aligned} f(n+1)-f(n)&=\sum\limits_{i=1}^{n+1}\left\lfloor\dfrac{n+1}{i}\right\rfloor-\sum\limits_{i=1}^n\left\lfloor\dfrac{n}{i}\right\rfloor\\ &=1+\sum\limits_{i=1}^{n}\left(\left\lfloor\dfrac{n+1}{i}\right\rfloor-\left\lfloor\dfrac{n}{i}\right\rfloor\right)\\ &=\sum\limits_{i=1}^{n+1}\dfrac{1+n\%i-(n+1)\%i}{i}\\ \end{aligned} f(n+1)f(n)=i=1n+1in+1i=1nin=1+i=1n(in+1in)=i=1n+1i1+n%i(n+1)%i

显然当 i i i n + 1 n+1 n+1 的因数时, 1 + n % i − ( n + 1 ) % i 1+n\%i-(n+1)\%i 1+n%i(n+1)%i 等于 1 1 1,否则为 0 0 0

f ( n + 1 ) − f ( n ) = σ 0 ( n + 1 ) f(n+1)-f(n)=\sigma_0(n+1) f(n+1)f(n)=σ0(n+1)

观察到 1 ≤ n ≤ 20 , 1 ≤ m ≤ 2 × 1 0 5 1\le n\le20,1\le m\le2\times 10^5 1n20,1m2×105,容易想到构造出一些 n n n 满足 f ( n + 1 ) − f ( n ) = 2 0 , 2 1 , … , 2 17 f(n+1)-f(n)=2^0,2^1,\dots,2^{17} f(n+1)f(n)=20,21,,217

我们都知道 σ 0 ( n ) = ∏ i = 1 m ( c i + 1 ) \sigma_0(n)=\prod\limits_{i=1}^m(c_i+1) σ0(n)=i=1m(ci+1),其中 n = p 1 c 1 p 2 c 2 … p m c m n=p_1^{c_1}p_2^{c_2}\dots p_{m}^{c_m} n=p1c1p2c2pmcm

只需令 n n n 为前几个质数的乘积,即可构造出 σ 0 ( n ) \sigma_0(n) σ0(n) 2 2 2 的幂。

注意 n n n 要在 long long \text{long long} long long 范围内,而 2 × 3 × 5 × ⋯ × 47 2\times 3\times5\times \dots\times47 2×3×5××47(共 15 15 15 个质数)已经是极限,所以可以放弃后面的大质数,给前面的 2 , 3 2,3 2,3 加次数。这样可以构造出 2 16 , 2 17 2^{16},2^{17} 216,217

类欧几里得

这三个式子 ∑ i = 0 n ⌊ a i + b c ⌋ , ∑ i = 0 n ⌊ a i + b c ⌋ 2 , ∑ i = 0 n i ⌊ a i + b c ⌋ \sum\limits_{i=0}^{n}\lfloor \frac{ai+b}{c} \rfloor\,,\ \sum\limits_{i=0}^{n}{\lfloor \frac{ai+b}{c} \rfloor}^2\,,\ \sum\limits_{i=0}^{n}i\lfloor \frac{ai+b}{c} \rfloor i=0ncai+b, i=0ncai+b2, i=0nicai+b

都可以用类欧几里得求。时间复杂度均为 O ( n ) O(\sqrt n) O(n )。(分母为常数,分子是一次形式)

例题4

CF1182F 改编

给出整数 l , r l,r l,r 和奇数 a , k a,k a,k,求当 min ⁡ x ∈ [ l , r ] ∩ Z tan ⁡ ( a k π x ) \min\limits_{x\in[l,r]\cap\Z}\tan\left(\dfrac{a}{k}\pi x\right) x[l,r]Zmintan(kaπx) 取得最小值时的最小整数 x x x

题解参考 CF1182F

进制转换

形如 ⌊ A a b ⌋ \left\lfloor\dfrac{A}{a^b}\right\rfloor abA,分母中有指数, a b a^b ab 又特别大,可以考虑使用 FFT \text{FFT} FFT

⌊ A a b ⌋ = A − A % a b a b \left\lfloor\dfrac{A}{a^b}\right\rfloor=\dfrac{A-A\%a^b}{a^b} abA=abAA%ab

联想到一个数 n n n 2 x 2^x 2x 相当于把 n n n 转换为二进制后取后面的 x x x 位。

所以求 A % a b A\%a^b A%ab 可以先把 A A A 转成 a a a 进制再进行运算。有时会有奇效。

例题5

from DengDuck
⌊ a b c d ⌋ \left\lfloor\dfrac{a^b}{c^d}\right\rfloor cdab

1 ≤ a , b ≤ 1 0 9 , 1 ≤ c ≤ 100 , 1 ≤ d ≤ 1 0 4 1\le a,b\le10^9,1\le c\le100,1\le d\le 10^4 1a,b109,1c100,1d104
答案模 998244353 998244353 998244353


a a a 转成 c c c 进制,然后将各位系数看作是一个多项式,然后做快速幂。其中多项式乘法用 F F T FFT FFT 快速算出。

时间复杂度 O ( d log ⁡ d log ⁡ b ) O(d\log d\log b) O(dlogdlogb)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/149213.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

C/C++:[Error] ld returned 1 exit status 解决方案

好久没用了&#xff0c;今天写了会儿代码&#xff0c;各种BUg,emmmmmm 出现了很多次以下这个问题&#xff1a;[Error] ld returned 1 exit status 可能问题&解决方式&#xff1a; 常见的语法/单词拼写错误&#xff1a;常见的Main,printf,scanf等拼写错误 函数名或者声明有…

QT商业播放器

QT商业播放器 总体架构图 架构优点&#xff1a;解耦&#xff0c;采用生产者消费者设计模式&#xff0c;各个线程各司其职&#xff0c;通过消息队列高效协作 这个项目是一个基于ijkplayer和ffplayer.c的QT商业播放器, 项目有5部分构成&#xff1a; 前端QT用户界面 后端是集成了…

制作电子期刊没模板?请疯狂看我

你们是不是也在为制作电子期刊而烦恼&#xff1f;没有合适的模板&#xff0c;内容再精彩也难以展现。今天给大家分享一个超级实用的秘籍&#xff01;✨ 首先&#xff0c;我们要明白&#xff0c;电子期刊制作的关键在于模板的选择。一个好的模板可以让你的内容瞬间焕发光彩。但是…

分类预测 | MATLAB实现SSA-FS-SVM麻雀算法同步优化特征选择结合支持向量机分类预测

分类预测 | MATLAB实现SSA-FS-SVM麻雀算法同步优化特征选择结合支持向量机分类预测 目录 分类预测 | MATLAB实现SSA-FS-SVM麻雀算法同步优化特征选择结合支持向量机分类预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 MATLAB实现SSA-FS-SVM麻雀算法同步优化特征选择结…

OOTD | 美式复古穿搭耳机,复古轻便的头戴式耳机推荐

复古耳机更能带来年代感的复古数码产品&#xff0c;头戴式耳机就好似是时光滤镜的时髦配饰&#xff0c;不说功能实用性&#xff0c;在造型上添加就很酷。 随着时代的发展&#xff0c;时尚有了新的定义。对如今的消费者来说&#xff0c;时尚不仅是美学与个性的展现&#xff0c;…

C10K问题:高并发模型设计

一、循环服务器模型 #include <stdio.h> #include <stdlib.h> #include <string.h> #include <errno.h> #include <unistd.h> #include <signal.h> #include <sys/types.h> #include <sys/socket.h> //*******// #include &l…

头戴式耳机怎么戴好看?头戴式耳机正确代法

走在大街上总能看到那么一些人&#xff0c;他们眼神时而朦胧涣散&#xff0c;时而精神奕奕&#xff0c;全身上下始终散发着#请勿打扰#的气息&#xff0c;因为他们都戴着头&#xff01;戴&#xff01;式&#xff01;耳&#xff01;机&#xff01;但是头戴式耳机把头压得扁扁的&a…

《C和指针》笔记31:多维数组的数组名、指向多维数组的指针、作为函数参数的多维数组

文章目录 1. 指向多维数组的数组名2. 指向多维数组的指针3. 作为函数参数的多维数组 1. 指向多维数组的数组名 我们知道一维数组名的值是一个指针常量&#xff0c;它的类型是“指向元素类型的指针”&#xff0c;它指向数组的第1个元素。那么多维数组的数组名代表什么呢&#x…

[管理与领导-113]:IT人看清职场中的隐性规则 - 10 - 看清人的行动、行为、手段、方法背后的动机与背景条件

目录 前言&#xff1a; 一、冰山模型 1.1 冰山模型&#xff0c;系统思考的工具 1.2 冰山模型&#xff1a;发现人行为背后的动机 二、动机、行为模型 "说一套"&#xff1a; "做一套"&#xff1a; "演一套"&#xff1a; "学一套&quo…

【已解决】 Expected linebreaks to be ‘LF‘ but found ‘CRLF‘.

问题描述 团队都是用mac&#xff0c;只有我自己是windows&#xff0c;启动项目一直报错 Expected linebreaks to be ‘LF‘ but found ‘CRLF‘. 但我不能因为自己的问题去改团队配置&#xff0c;也尝试过该vscode配置默认是LF还是报错 思路 看文章vscode如何替换所有文件的…

深入剖析红黑树:优雅地平衡二叉搜索树

目录 一.红黑树的概念二.插入操作三.与AVL树的比较 一.红黑树的概念 在之前的学习中&#xff0c;我们了解了二叉搜索平衡树&#xff0c;AVL树通过控制每个结点中的平衡因子的绝对值不超过1&#xff0c;实现了一个高性能的树。而相较于AVL的高度平衡&#xff0c;红黑树觉得AVL为…

传输层协议—UDP协议

传输层协议—UDP协议 文章目录 传输层协议—UDP协议传输层再谈端口号端口号范围划分pidofnetstat UDP协议端格式UDP报文UDP特点UDP缓冲区基于UDP的应用层协议 传输层 在学习HTTP/HTTPS等应用层协议时&#xff0c;为了方便理解&#xff0c;可以简单认为HTTP将请求和响应直接发送…

JMeter性能分析实战一:日常登录接口

负载测试 日常需求&#xff1a;负载测试&#xff01; 对于桥的负载测试&#xff1a;我给你20t的一排车辆&#xff0c;看你能不能撑得住20t&#xff01; 对于系统的负载测试&#xff1a; 逐步增加负载&#xff0c;便于问题的发现和定位&#xff0c;不要操之过急。逐步增加负载…

Stable Diffusion云服务器部署完整版教程

Stable Diffusion云服务器部署完整版教程 2023年07月04日 22:30 3607浏览 18喜欢 22评论 <span class"bili-avatar-icon bili-avatar-right-icon "></span> </div>薯片_AI 粉丝&#xff1a; 1513 文章&#xff1a; 1 设置分组取消关注 已关注 …

【MySql】3- 实践篇(一)

文章目录 1. 普通索引和唯一索引的选择1.1 查询过程1.2 更新过程1.2.1 change buffer1.2.2 change buffer 的使用场景 1.3 索引选择和实践1.4 change buffer 和 redo log2. MySQL为何有时会选错索引?2.1 优化器的逻辑2.1.1 扫描行数是怎么判断的?2.1.2 重新统计索引信息 2.2 …

C语言中柔性数组的讲解与柔性数组的优势

前言:也许你从来没有听说过柔性数组&#xff08;flexible array&#xff09;这个概念&#xff0c;但是它确实是存在的。C99 中&#xff0c;结构中的最后一个元素允许是未知大小的数组&#xff0c;这就叫做"柔性数组"成员。 目录标题 柔性数组什么是柔性数组呢&#…

【C语言】八大排序算法

文章目录 一、冒泡排序1、定义2、思想及图解3、代码 二、快速排序1、hoare版本2、挖坑法3、前后指针法4、非递归快排5、快速排序优化1&#xff09;三数取中选key值2&#xff09;小区间优化 三、直接插入排序1、定义2、代码 四、希尔排序1、定义2、图解3、代码 五、选择排序1、排…

sheng的学习笔记-【中文】【吴恩达课后测验】Course 2 - 改善深层神经网络 - 第二周测验

课程2_第2周_测验题 目录&#xff1a;目录 第一题 1.当输入从第8个mini-batch的第7个的例子的时候&#xff0c;你会用哪种符号表示第3层的激活&#xff1f; A. 【  】 a [ 3 ] { 8 } ( 7 ) a^{[3]\{8\}(7)} a[3]{8}(7) B. 【  】 a [ 8 ] { 7 } ( 3 ) a^{[8]\{7\}(3)} a…

代码随想录 Day11 二叉树 LeetCode T144,145,94 前中后序遍历 (递归解法)

题解及更详细解答来自于:代码随想录 (programmercarl.com) 前言: 递归三要素 确定递归函数的参数和返回值&#xff1a; 确定哪些参数是递归的过程中需要处理的&#xff0c;那么就在递归函数里加上这个参数&#xff0c; 并且还要明确每次递归的返回值是什么进而确定递归函数的返…

【Redis】基础数据结构-skiplist跳跃表

有序集合Sorted Set zadd zadd用于向集合中添加元素并且可以设置分值&#xff0c;比如添加三门编程语言&#xff0c;分值分别为1、2、3&#xff1a; 127.0.0.1:6379> zadd language 1 java (integer) 1 127.0.0.1:6379> zadd language 2 c (integer) 1 127.0.0.1:6379…