TC SRM674 DIV2 T3 VampireTreeDiv2

MATLAB代码及接受套件:《沿轨速度预算管控饱和无人机群中的编队误差》.zip 1.版本:matlab2014a/2019b/2024b 2.附赠案例数据可直接运行。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。 立即下载

题面

You are a genealogist specializing in family trees of vampires. Vampire family trees differ from human family trees. In particular, there are two ways how a vampire can be “born”:

  1. A living human can be turned into a vampire (the technical term here is “sired”) by an existing vampire. In this case we call the older vampire the master and the newly created vampire the servant of that master.
  2. Two existing vampires can have a vampire child. In this case we call the two original vampires parents and the new vampire their child. Note that there are no restrictions on the two parent vampires. In particular, their genders and their ancestry can be arbitrary. Any two vampires can have a child.

You are now studying one particular family of vampires. These vampires have all been created from a single vampire: the True Ancestor. This special vampire has no master and no parents. There are n vampires in the family. They are numbered 0 through n-1 in the order in which they were born, with vampire 0 being the True Ancestor.
You are given a description of the family tree in the vector s A and B, each with n-1 elements. For each i between 1 and n-1, inclusive, the values A[i-1] and B[i-1] describe either the master or the parents of vampire i. If vampire i has a master then A[i-1] will be the number of its master and B[i-1] will be equal to -1. Otherwise, A[i-1] and B[i-1] will be the numbers of the two parents of vampire i.
In this particular family it is pretty rare for two vampires to have a child. More precisely, there are at most 15 vampires with two parents each.
You would like to select a representative sample of vampires from this family. The sample must have the following properties:

  • You need to select at least one vampire from each master/servant and also from each parent/child relationship.
  • The total number of vampires in your sample must be as small as possible.

Find and return the number of ways in which you can select the sample, modulo 10^9+7.

约定

  • A will contain between 1 and 999 elements, inclusive.
  • A and B will contain the same number of elements.
  • There are no more than 15 elements of B that are not equal to -1.
  • 0≤A[i]≤i0≤A[i]≤i for all valid i.
  • −1≤B[i]≤i−1≤B[i]≤i for all valid i.
  • A[i]≠B[i]A[i]≠B[i] for all valid i.

题意

不解释了,自己读题面吧。

分析

PART 1 构图

首先我们将所有关系构成一张图,为了后面推理方便,我们对于主仆或亲子关系,从主到仆或从父母到孩子连有向边。显然这是一个DAG(有向无环图)。

PART 2 选择个数最少

我们先来考虑选出个数最小的问题,我们令F[u][0]F[u][0]为uu节点不选的情况下,至少需要选几个节点;F[u][1]为选uu节点的情况下,包括u至少要选几个节点。
因此状态转移方程如下:

F[u][0]=∑v|<u,v>∈EF[v][1]F[u][0]=∑v|<u,v>∈EF[v][1]

F[u][1]=∑v|<u,v>∈Emin(F[v][0],F[v][1])+1F[u][1]=∑v|<u,v>∈Emin(F[v][0],F[v][1])+1

即如不选当前节点则需要从它出发的边指向的点都要选,若选则这些点是选与不选都没有关系。

PART 3 求方案数

有了刚才求出的最少选择个数,就可以知道求方案的时候我们该如何转移。
我们令G[u][0]G[u][0]为不选择uu节点满足条件的方案数,G[u][1]为选择uu节点满足条件的方案数。(当不存在这种方案的时候用+∞表示)
那么转移方程也可以很快列出:

G[u][0]=∏v|<u,v>∈EG[v][1]G[u][0]=∏v|<u,v>∈EG[v][1]

G[u][1]=∏v|<u,v>∈E⎧⎩⎨⎪⎪G[v][0],G[v][1],G[v][0]+G[v][1],ifF[v][0]<F[v][1]ifF[v][1]<F[v][0]ifF[v][0]=F[v][1]G[u][1]=∏v|<u,v>∈E{G[v][0],ifF[v][0]<F[v][1]G[v][1],ifF[v][1]<F[v][0]G[v][0]+G[v][1],ifF[v][0]=F[v][1]
但是!这样会出现一个问题!

考虑对于一个子节点,它的方案数会被转移到它的两个父节点,这样,在最终统计时,就产生了重复。
那么要如何去除呢?
最直接的方式就是断开它与其中一个父亲的边。我们指定它只向其中一个父节点转移,断开与另一个父节点的关系。至于这个父节点的选择,随便怎么选都可以。(然而当时实现的时候处于一种神奇的选法选择了离根节点0最远的父亲)

PART 4 新的问题!

我们考虑对于一个孩子节点,如果它被选择,那么它的父亲可选可不选,但如果它没有被选,它的父亲就是必须被选。而我们在转移时这个状态是无法确定的。但是我们注意到孩子节点数量非常少,只有15。我们可以用直接枚举每个孩子的选与不选,使用状态压缩即可。

参考代码

using namespace std;
typedef long long LL;

const int MAXN = 1005;
const int BIT_NGTONE = 0xff;
const int MOD = 1000000007;
const int INF = 0x3f3f3f3f;

struct Edge {
    int to, next;
} E[MAXN << 1];

class VampireTreeDiv2 {
public:
    int countMinSamples( vector <int> A, vector <int> B );
private:
    int N, tot_chldrn;
    void init();    // 初始化
    void add_edge(int u, int v);    // 加边,从u到v
    void dfs(int u);    // 给神奇的选法配套的深搜
    void dp(int u);     // 记忆化DP
};

int last[MAXN], tote, dep[MAXN], chdrn[20], F[MAXN][2], fa[MAXN], flag[MAXN];
LL G[MAXN][2];

int VampireTreeDiv2::countMinSamples(vector <int> A, vector <int> B) {
    N = A.size();
    init();
    int i;
    for (i = 0; i < N; i++)
        if (B[i] == -1) add_edge(A[i], i + 1);
        else chdrn[tot_chldrn++] = i, add_edge(A[i], i + 1), add_edge(B[i], i + 1);
    dfs(0);
    int lim = 1 << tot_chldrn, stat, mini = INF;
    for (i = 0; i < tot_chldrn; i++) fa[chdrn[i] + 1] = dep[A[chdrn[i]]] > dep[B[chdrn[i]]] ? A[chdrn[i]] : B[chdrn[i]];    // 先选好孩子的一个父节点
    LL res = 0;
    for (stat = 0; stat < lim; stat++) {    // stat枚举孩子们选与不选的状态
        memset(F, BIT_NGTONE, sizeof(F));
        memset(G, BIT_NGTONE, sizeof(G));
        for (i = 0; i < tot_chldrn; i++) flag[chdrn[i] + 1] = (stat >> i & 1) + 1;  // 给孩子打上标记,0表示这个节点不是孩子,1表示是不选的孩子,2表示选的孩子
        dp(0);
        if (F[0][0] < mini) res = G[0][0];      // 更新答案,级计数
        else if (F[0][0] == mini) res = (res + G[0][0]) % MOD;
        mini = min(F[0][0], mini);
        if (F[0][1] < mini) res = G[0][1];
        else if (F[0][1] == mini) res = (res + G[0][1]) % MOD;
        mini = min(F[0][1], mini);
    }
    return res;
}

void VampireTreeDiv2::init() {
    tote = tot_chldrn = 0;
    memset(last, 0, sizeof(last));
    memset(flag, 0, sizeof(flag));
    memset(dep, 0, sizeof(dep));
}

void VampireTreeDiv2::add_edge(int u, int v) {
    E[++tote].to = v, E[tote].next = last[u], last[u] = tote;
}

void VampireTreeDiv2::dfs(int u) {
    for (int i = last[u]; i; i = E[i].next)
        if (dep[E[i].to] < dep[u] + 1) {
            dep[E[i].to] = dep[u] + 1;
            dfs(E[i].to);
        }
}

void VampireTreeDiv2::dp(int u) {
    if (F[u][0] != -1) return;      // 如果搜过了就直接返回
    F[u][0] = 0, G[u][0] = G[u][1] = F[u][1] = 1;   // 初始化
    bool fail0 = false, fail1 = false;  // fail0表示该节点不选的状态是否失效,fail1表示该节点选的状态是否失效
    int delta;
    for (int i = last[u]; i; i = E[i].next) {
        int & v = E[i].to;
        dp(v);      // 无论如何先搜一下
        if (!flag[v] || flag[v] && u == fa[v]) {    // 如果是非孩子节点或允许转移的孩子节点(没有被删边)
            if (F[v][1] >= INF || fail0) fail0 = true, F[u][0] = INF, G[u][0] = 0;  // 若存在从非法状态的转移则对应的状态也非法
            else F[u][0] += F[v][1], G[u][0] = G[u][0] * G[v][1] % MOD;     // 否则更新答案
            delta = min(F[v][0], F[v][1]);
            if (delta >= INF || fail1) fail1 = true, F[u][1] = INF, G[u][1] = 0;
            else F[u][1] += delta,
            G[u][1] *= F[v][0] < F[v][1] ? G[v][0] : (F[v][0] == F[v][1] ? (G[v][0] + G[v][1]) % MOD : G[v][1]), G[u][1] %= MOD;
        }
        else if (F[v][1] >= INF) fail0 = true, F[u][0] = INF, G[u][0] = 0;      // 注意删边只是不计数方案,对于当前节点是否可以不选的状态还是需要判断
    }
    if (flag[u] == 2) F[u][0] = INF, G[u][0] = 0;   // 再最后更新非法状态,可以省去很麻烦的特判
    if (flag[u] == 1) F[u][1] = INF, G[u][1] = 0;
}

总结

这是一道非常好的树型DP。首先它在求方案的同时还要保持选出的样本最少,因此我们就不能单纯维护一个方案计数的转移,并且在转移的时候也会出现一些限制。然后,关于方案数的转移,其实没有难么多复杂的组合关系,就只是单纯的乘法原理,因此思考时不要把它想得复杂,造成害怕,想通了其实很简单。最后应该注意一些细节性的东西。最近打DP状态都不太对,要么是方程写不出,要么是边界没控制好。当然不需要急,这些东西还是要见识的DP多了才会慢慢有感觉的;同时建模的方法和思考的方向也要选择正确。

Spring Cloud 微服务开发核心工具集 基础工具类、验证码、http、redis、ip2region、xss 等组件 Spring Cloud 微服务开发核心工具集。基础工具类、验证码、http、redis、ip2region、xss 等组件 立即下载

相关推荐

CrewAI 多 Agent 实战包 v1(Mock免Key跑通+通义千问可选+流水线样例)

本资源是 CrewAI 风格多 Agent 可运行工程包:研究→写作→审校等流水线样例。无 API Key 时自动降级 Mock 引擎跑通;有 DASHSCOPE_API_KEY 时可接真实 CrewAI + 通义千问。含中文 README、samples、smoke 留档、单元测试。本包不含密钥。关联博客:https://blog.youkuaiyun.com/mtl1994

TopCoder SRM674D2L3 VampireTreeDiv2

传送门 题意(by 某轻小说看多了的yhn): 吸血鬼有两种产生方式: 1、被它的主人(一个吸血鬼)“初拥”。 2、被它的父母(两个吸血鬼)所生。但这类吸血鬼很少,最多只有15个 现在,给出每个吸血鬼的主人(或父母),要求选择尽可能少的吸血鬼,使得每个主仆关系、每个父子,母子关系中,都至少有一个被选中。求选择的方案数。 题解: 我们考虑一下树上最小边覆盖(是叫这个东西吧?),这个东西是可以直接用d...

dogeding233 204

市场销售总监年终汇报必备PPT.pptx

市场销售总监年终汇报必备PPT

洛谷11月月赛 III Div.2 T3 基础博弈练习题

题目大意: YSGH和YGSH在打膈膜,YSGS在旁边围观。 规则是这样的,先给定一个正整数mmm和一个nnn个数序列BBB,一开始有一个棋子在BBB的第一个位置,并将B1B_1B1​减去111。此后双方轮流操作,每次操作,假设当前棋子在iii,可以把棋子移到一个位置jjj,满足j∈[i,min(i+m,n)]j\in[i,min(i+m,n)]j∈[i,min(i+m,n)]且Bj>0B_...

owo 261

2263XT开卡工具N48R,威刚S20

2263XT开卡工具N48R,威刚S20可用

半桥LLC谐振变换器开环+闭环仿真设计资料(Simulink仿真实现)

内容概要:本文档系统性地介绍了半桥LLC谐振变换器的开环与闭环仿真设计方法,基于Simulink平台构建完整的仿真模型,涵盖系统建模、关键参数设计、控制策略实现及动态性能验证全过程。重点阐述了LLC谐振变换器的工作原理、谐振腔参数(Lr、Cr、Lm)的优化设计方法、零电压开关(ZVS)与零电流开关(ZCS)等软开关技术的实现机制,并深入探讨电压/电流双闭环控制策略,特别是恒压恒流双竞争控制逻辑的切换机制与稳定性保障。资料配套提供完整的仿真模型、详细说明文档及参考文献,有助于全面掌握其在启停过程、负载突变等工况下的动态响应特性与系统鲁棒性调控方法。; 适合人群:具备电力电子技术基础理论知识和Simulink仿真操作能力的高校研究生、科研机构研究人员,以及从事高频高效开关电源、新能源汽车车载充电机(OBC)、充电桩电源、数据中心供电等领域的工程技术人员。; 使用场景及目标:① 掌握LLC谐振变换器在实际工程中的精确建模与仿真分析流程;② 深入理解并独立实现从开环频率调制到闭环反馈控制的平滑切换逻辑;③ 应用于高效率DC-DC变换器、电动汽车充电系统、可再生能源并网电源等场景下的控制系统设计与性能优化; 阅读建议:建议结合所提供的仿真模型进行分步调试与参数扫描实验,重点关注控制器带宽设计、谐振元件参数匹配对效率的影响以及系统上电过程中的软启动策略设计,同时推荐对比学习全桥LLC、CLLC等衍生拓扑的相关资料,以建立完整的谐振变换器控制体系认知。

TopCoder SRM 682 Div2 1000 FriendlyRobot

大概思路是用f[i][j]f[i][j]f[i][j]表示当前执行到第iii个操作,改变了jjj次时回到原点的最大次数,并且此时刚好在原点(这是为了方便转移)。然后每次只需要枚举一个kkk,计算出执行完(i,k](i,k](i,k]这一段操作后再回到原点需要修改几个,就可以进行转移。 少写了一句判断状态是否可行害得我懵逼了好久(感谢xLLLx帮我Debug) #include &amp;amp;lt;bits...

ymzqwq的博客 245

SOP 配电网故障重构方法研究【IEEE33节点】(Matlab代码实现)

内容概要:本文围绕基于SOP(Soft Open Point)的配电网故障重构方法展开研究,采用IEEE33节点标准配电系统作为仿真测试平台,利用Matlab进行代码实现与仿真验证。研究重点在于通过SOP这一柔性电力电子装置实现故障后网络拓扑的快速重构,提升供电恢复能力与系统可靠性。文中详细阐述了故障重构的数学建模过程,结合优化算法实现负荷转供与孤岛划分的协同决策,在保证辐射状运行约束的前提下,最大限度恢复失电负荷,并降低网络损耗。该方法充分体现了SOP在主动配电网中的灵活调控优势,为现代智能配电网的自愈控制提供了有效技术路径。; 适合人群:电气工程及相关专业的高校研究生、从事配电网自动化与智能电网研究的科研人员,以及具备一定Matlab编程基础和电力系统分析背景的研发技术人员。; 使用场景及目标:① 掌握基于SOP的配电网故障恢复机制与重构策略设计;② 学习如何在Matlab环境下构建IEEE33节点系统模型并实现故障重构算法;③ 深入理解含分布式电源与柔性装置的主动配电网优化运行方法; 阅读建议:建议结合电力系统分析基础知识,重点关注SOP的建模方式、故障重构的优化目标与约束条件设定,并动手实践Matlab代码以加深对算法流程和仿真结果的理解。

Topcoder SRM 674 Div.2题解

T1 解题思路 这题应该不是很难,主要是题意理解问题。 注意给出的两个数组里映射关系已经对应好了,只要判断是否为双射即可 参考程序 #include &lt;bits/stdc++.h&gt; using namespace std; class RelationClassifier { public: string isBijection( vector &lt;...

chy2003的博客 242

一份外盘期货历史高频tick数据,涵盖能源、贵金属、股指等主要品种的逐笔成交与盘口快照 每条记录包含精确至毫秒的时间戳、合约代码、成交价格、成交量以及主动买卖方向标识 同时提供该时刻的最优申买价、申卖

一份外盘期货历史高频tick数据,涵盖能源、贵金属、股指等主要品种的逐笔成交与盘口快照。每条记录包含精确至毫秒的时间戳、合约代码、成交价格、成交量以及主动买卖方向标识。同时提供该时刻的最优申买价、申卖价及对应挂单量,用于还原盘口深度变化,数据时间覆盖连续的多个交易日。 数据源:CMES金融数据库

基于变频控制的多相交错LLC谐振变换器闭环仿真(Simulink仿真实现)

内容概要:本文档聚焦于电力电子与控制系统领域的仿真研究,核心内容为“基于变频控制的多相交错LLC谐振变换器闭环仿真”的Simulink实现。系统阐述了LLC谐振变换器的开环与闭环控制策略、软开关技术、恒压恒流双竞争控制机制、多相交错结构设计及变频调制原理,通过建模仿真深入剖析高频DC-DC变换器的工作特性与动态响应。文档整合了丰富的科研资源,涵盖双向CLLC、DAB变换器、PWM整流器、微电网优化调度、状态估计(EKF/UKF/PF)等多个前沿方向的仿真案例,形成一个体系完整、技术覆盖面广的综合性技术资料库,适用于高水平科研与工程实践。; 适合人群:电气工程、自动化、电力电子及相关专业的研究生、高校科研人员,以及从事新能源发电、电动汽车、智能电网、工业电源等领域的技术研发工程师。; 使用场景及目标:①开展高频谐振变换器拓扑结构与先进控制策略的深入研究;②完成复杂电力电子系统的建模、仿真与性能验证;③支撑SCI/EI论文撰写、科研项目申报与关键技术攻关;④辅助高校课程设计、研究生课题实践与毕业设计的仿真实验环节。; 阅读建议:建议结合文中提供的网盘资源与微信公众号资料进行系统学习,优先掌握LLC变换器的基本工作模态与谐振原理,再逐步深入闭环控制器设计与参数整定,仿真过程中应重点关注关键波形分析与系统稳定性判据,以全面提升对高频变换器动态特性的理解与工程应用能力。

TopCoder SRM674 div1 250

一棵树,给一个数组num[1...n],如果i是根,i拥有num[i]个“孩子”,否则i拥有num[i]-1个“孩子”。问在所有树的可能形态中,可能的最远的两个点的距离。首先应该想到,num[i]实际上表示的是点i有多少条边,就能直接判断出树是否合法了。然后答案就是n-数组中1的个数+1。因为度大于1的那些点,可以连成一串,在这一串的头尾补上度为1的点就行了,这肯定是合法的最长距离。

A Cube Master 755

产业园区运营负责人如何助力园区内企业与高校科研成果高效对接?.docx

科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。

ZOJ 4031 Game on a Tree 树形DP

http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=5772 BaoBao is playing a game on a rooted tree with vertices and weighted edges. At the beginning of the game, a chess piece is placed on ...

lifelike 1618

【顶级EI复现】基于KKT条件与分段解析优化的双有源桥DC-DC变换器软开关协同最小应力闭环控制方法(Simulink仿真实现)

内容概要:本文详细介绍了一种基于KKT条件与分段解析优化的双有源桥DC-DC变换器软开关协同最小应力闭环控制方法,属于高端电力电子系统控制领域的“顶级EI复现”级别研究。该方法融合最优控制理论与工程实践,通过构建精确的数学模型,在Simulink环境中实现了闭环仿真,有效解决了软开关实现过程中器件电压/电流应力过大的问题,达成了高效率与低损耗的协同优化目标。研究成果可广泛应用于新能源汽车、智能电网、工业电源等对功率密度和可靠性要求极高的电力转换场景。; 适合人群:面向具备电力电子、自动控制或电气工程等相关专业背景,从事科研仿真工作的硕士、博士研究生及高校科研人员,尤其适合熟悉双有源桥(DAB)拓扑结构、掌握Simulink建模技能,并具有优化控制与非线性系统分析基础的研发人员。; 使用场景及目标:①复现高水平EI期刊论文中的先进控制算法,提升科研竞争力;②深入理解KKT条件在电力电子实时优化控制中的数学机制与物理意义;③掌握DAB变换器中软开关与器件应力最小化的协同设计方法;④为撰写学术论文、开展课题研究或工程原型开发提供可运行的仿真模型与完整的技术路线支撑。; 阅读建议:建议结合文中提到的“顶级EI复现”背景,系统学习KKT最优性条件的推导过程及其在约束优化问题中的应用逻辑,并在Simulink中动手调试仿真模型,重点关注分段解析控制策略的实现细节与参数整定方法。推荐访问所提供的资源链接,获取YALMIP工具包及相关代码资料,以提高复现效率与研究深度。

【顶级EI复现】新扩展移相角下的双有源桥DC-DC 变换器优化控制策略(Simulink仿真实现)

内容概要:本文围绕Plecs平台构建的全桥LLC谐振变换器闭环仿真模型展开,系统阐述了基于变频与移相混合控制策略的设计与实现方法。模型深入剖析了LLC谐振变换器的工作机理,涵盖谐振腔关键参数设计、软开关实现条件、变频调制与移相控制的协同作用机制,并实现了完整的闭环控制系统仿真,能够有效验证变换器在不同负载与输入电压条件下的动态响应、效率表现及稳态性能。研究还整合了配套的参数设计资料与计算工具,支持从理论分析、参数设计到仿真验证的一体化开发流程,为高性能LLC变换器的研发提供了全面的技术支撑。; 适合人群:具备电力电子与电源变换基础知识的工程师、高校研究生,以及从事开关电源、DC-DC变换器研发的技术人员,特别适合需要掌握LLC谐振变换器建模、仿真与优化控制策略的科研与工程人员。; 使用场景及目标:①应用于LLC谐振变换器的科研教学与课程设计,深化对谐振工作模式、软开关机理及混合控制策略的理解;②作为实际产品研发中的仿真验证平台,用于优化控制算法、评估系统效率与动态性能;③支持对变频+移相协同控制、闭环稳定性、软开关范围拓展及最小化应力等关键技术进行深入研究与方案迭代。; 阅读建议:建议结合经典电力电子教材与LLC变换器专业设计手册进行学习,重点研读谐振参数设计与控制环路建模章节。实际应用时,应依据具体的硬件规格(如开关器件、磁性元件参数)精确调整仿真模型,并通过多轮仿真结果对比,不断优化系统设计方案。

高校技术转移办公室人员如何提升技术成果的市场化转化效率?.docx

科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。

双向全桥CLLC拓扑变频控制仿真模型(Simulink仿真实现)

内容概要:本文详细介绍了一套基于Simulink的双向全桥CLLC拓扑变频控制仿真模型,重点实现双闭环PWM控制策略下的谐振变换器系统仿真。该模型融合变频控制与移相控制技术,具备高频软开关特性,适用于电动汽车V2G充放电、高效DC-DC能量转换等高效率电力电子应用场景。资源涵盖闭环控制系统设计、关键参数整定方法、动态响应分析及完整的仿真验证流程,并提供配套PPT说明与参考文献,帮助深入理解控制逻辑与工程实现细节。此外,资源包还集成多种LLC、CLLC及PFC拓扑的仿真案例,具有较强的系统扩展性与科研参考价值,支持拓扑复用、控制算法迭代与多工况验证。; 适合人群:具备电力电子、自动控制理论基础,从事新能源、电动汽车、电源系统等领域研究的研究生、科研人员及电气工程师;熟悉Matlab/Simulink仿真环境者尤佳。; 使用场景及目标:①深入学习CLLC谐振变换器的工作机理与变频调制策略;②支撑科研项目中的拓扑选型、控制算法开发与系统级仿真验证;③用于毕业设计、学术论文复现或工业级电源产品的前期技术预研。; 阅读建议:建议结合文档中提供的多个仿真模型进行对比分析,重点关注双闭环结构(电压外环+电流内环)的设计原理与稳定性优化,同时利用配套资料系统掌握参数设计方法、谐振腔建模技巧及系统动态性能评估手段。

上一篇: TC SRM673 DIV2 T3 BearPermutations2
下一篇: 配对堆Pairing Heap
「已注销」
博客等级 码龄9年 13粉丝 18原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值