尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
车辆动力学仿真:轴系约定、参数体系与定步长计算链
简介《CarMaker Reference Manual 7.0》面向车辆动力学仿真开发者、工程师与研究人员服务于虚拟测试驾驶场景下的软件入门、模型搭建与参数配置。手册围绕CarMaker轴系与三维运动定义、几何数据导入及对象创建规范展开并系统说明子系统命名、物理量分类、缩写含义帮助读者建立可读、可维护的仿真模型。通用说明部分提醒文档随版本更新并给出错误与不准确信息的使用边界几何输入章节则区分对象定义惯例与建模指南便于按统一标准构建车辆模型。参数文件部分进一步讲解InfoFile格式、公共参数项、TestRun参数及车辆载荷、随机数生成器等设置同时覆盖SimParameters等配置入口便于将车辆特性、控制系统与轮胎模型落实到具体仿真任务。资源包为1个PDF文件大小8.47MB单册结构完整适合按章节查阅已有222人学习可作为车辆设计、安全评估和驾驶行为研究时对照软件界面与工程实践的参考。1. 一个反直觉的结论仿真结果失真的主要原因很少是求解器精度不够很多团队在车辆动力学仿真结果对不上实测时第一反应是求解器精度不够、轮胎模型太粗糙。但真正翻完这份 7.0 版参考手册会发现四百多页里占篇幅最多的不是算法推导而是轴系定义、几何输入约定、命名规范、参数文件格式这些看起来最不像“技术”的部分。虚拟测试驾驶有一条残酷前提整车模型的每一个力都靠符号串起来x 向前还是向后、y 向左还是向右、横摆角速度的正负、轮胎侧偏角的定义基准只要有一处和数据采集通道对不上曲线依旧平滑漂亮结论却整个反过来。更麻烦的是这类错误不会报错只会让模型表现得“挺像那么回事”。这篇就把这本参考手册背后的机制拆开约定层怎么锁死符号、文本参数体系怎么保证可复现、定步长运行时怎么调度、悬架与轮胎的计算链为什么必须按那个顺序走。2. 轴系、几何与命名仿真结果“左右颠倒”的真正源头2.1 一套坐标系怎么穿透整车模型车辆坐标系不是随手定的一个箭头它是整份手册的地基。常见的实现思路是右手系x 轴沿车身纵向指向前方y 轴指向左侧z 轴垂直向上原点落在设计基准点或静止状态下的参考位置上。这套约定一旦确定后面所有东西都必须服从它几何输入里各部件的安装点、质量几何里的质心坐标、悬架硬点、轮胎接地点的位置、输出通道里的加速度与角速度全部在这同一个坐标系里表达。手册把轴系放在第一章而不是塞进附录原因就在这里——它是全局约定不是可选项。真正容易出错的不是车身坐标系本身而是坐标系之间的转换链。轮胎有自己的一套坐标系侧偏角、外倾角、回正力矩都在轮胎坐标系里定义路面有自己的坐标系坡度与侧倾会改变重力在车身系里的分量外部数据采集设备往往输出另一套轴向习惯比如纵向向前、横向向右、垂向向下。这些坐标系之间靠旋转矩阵串联任何一环的轴向或者旋转顺序写反最终的力就会朝相反方向作用。我一般会这么理解轴系定义的价值不在于告诉你正方向在哪而在于它规定了“转换只能发生在一个地方”其余模块一律不做符号修正。还有一个隐蔽的耦合点在质量几何。质心位置是在车辆坐标系里给的但三个转动惯量是相对质心定义的如果几何输入里填的参考点不是质心就必须用平行轴定理把惯量搬过去否则整车横摆惯量会偏掉转向阶跃响应的稳态增益看着没问题瞬态超调却怎么调都对不上。这类问题在数据上表现为“大方向对、细节不对”最难排查。下面这段代码把最常见的一次转换写出来它的意义在于说明为什么“只翻一个轴”会出错import numpy as np # 车身系约定: x 向前, y 向左, z 向上, 右手系 # 实测设备常见输出: x 向前, y 向右, z 向下 def sensor_to_vehicle(v_sensor): # 同时翻转 y、z 两个轴, 行列式 det 1, 仍是右手系 R np.diag([1.0, -1.0, -1.0]) return R v_sensor a_sensor np.array([0.2, 1.5, -9.8]) # 右向 1.5 m/s^2, 垂向朝下为负 a_vehicle sensor_to_vehicle(a_sensor) print(a_vehicle) # [0.2, -1.5, 9.8], 左向为负, 垂向为正关键在np.diag([1.0, -1.0, -1.0])这个矩阵它翻转两个轴行列式为正坐标系手性没被破坏。如果只翻转 y 轴行列式变成 -1坐标系从右手系退化成左手系叉乘的符号就全反了横摆力矩、轮胎侧向力的方向会跟着一起错而模型本身不会有任何提示。这就是我说符号错误代价最高的原因——它不会以报错或抖动给出反馈它只会让曲线看起来合理。2.2 几何输入的两层规则约定管对错指南管好坏手册在几何输入这一块把规则拆成了两层这个拆分很值得说。Conventions 定义的是硬规则参考点怎么命名、局部坐标系怎么挂、父子层级怎么组织、单位统一到哪一套、层级里不允许出现环。Guidelines 定义的是软经验质量分布怎么近似、连接点尽量选在真实硬点、运动学链别拉太长、几何简化到什么程度还够用。前者可以被工具校验导入时违反就报错后者只能靠人判断。这样分层的直接后果是几何数据导入有两种截然不同的失败方式。一种是硬失败导入就报错反而好办另一种是软失败数据能读进来、模型能跑起来但结果就是偏——因为质量分布被简化得太狠或者悬架连接点取在了壳体表面而不是衬套中心。手册把 Guidelines 单独写出来其实是在承认一件事几何精度不是越高越好而是要和仿真目的匹配。做纵向巡航工况的能耗评估车身外形可以粗得离谱做侧倾稳定性的极限工况质心高度差 10 mm 就能让侧翻阈值明显变化。2.3 命名约定实际上是一份数据契约命名那几节读起来最枯燥但它承担的作用被严重低估。命名规则大致可以拆成三段结构子系统前缀标识这个量属于哪个模块量类别标识它是位移、速度、加速度、力还是力矩后缀标识方向、参考系或者单位。手册单独解释了常见缩写的含义目的不是教你背单词而是保证同一个物理量在图形界面、参数文件、输出通道、脚本接口里叫同一个名字。这件事的本质是数据契约。输出量与参数都是按字符串索引的你把一个自定义输出量的名字改了引用它的评估脚本就断了两个模块不小心取了同名前缀后写入的那个会静默覆盖前一个你在界面上看到一列数据其实已经不是你以为的那个信号。这类问题在多人协作的项目里几乎必然出现所以手册才把命名规范放在参数文件之前讲——它规定了后面所有文件里的键名长什么样。3. InfoFile 参数体系与场景编排文本配置为什么比图形界面更可靠3.1 键值文本加 include解析顺序就是覆盖顺序这套平台的配置全部落在纯文本的参数文件里一行一个键值对注释用井号开头支持用 include 把别的文件拼进来。常见的实现思路是预处理式的文本展开解析器从头读到尾遇到 include 就把被包含文件的内容原地插进来因此后出现的赋值会覆盖先出现的同名赋值语义上等价于 C 的宏展开。这个机制简单到几乎不需要文档但它同时决定了可复现性的上限——最终生效的参数等于展开后那份完整文本不多不少。Model kind 这个字段值得单独提。它决定解析器接下来走哪套拓扑分支乘用车、带挂车的组合、两轮车各自必填的字段集合完全不同。所以这个键必须排在最前面它一改后面整张字段表都跟着换。很多“参数填了但不生效”的问题根子就在这里——模型种类走错了分支那堆字段根本没被读取解析器也不会报错因为对它来说那些键就是无关的注释。下面是一段结构示意字段名以实际手册为准重点看层次关系# ---- 车辆参数集: 只描述这台车是什么 ---- #ModelKind PassengerCar # 决定后续解析器走哪套拓扑分支 #include susp_front.ifo # 前悬架运动学与柔性参数 #include tire_mf.ifo # 轮胎特性曲线 Mass 1580.0 # 簧上质量, kg Wheelbase 2.70 # 轴距, m # ---- TestRun 参数集: 只描述这一次怎么跑 ---- #include vehicle_ref.ifo # 引用上面的车辆集 #include env_generic.ifo # 环境模型 CycleTime 0.001 # 基础步长, s, 即 1 kHz ManeuverCount 3 Maneuver.1 0.0 3.0 SpeedControl 50 # [0,3) 秒, 纵向保持 50 km/h Maneuver.2 3.0 6.0 SteerStep 30 # [3,6) 秒, 30 度转向阶跃 Maneuver.3 6.0 6.0 EndCondition # 零长度机动, 只承载结束动作CycleTime 0.001是仿真的时间离散粒度所有模块的降频都基于它做整数分频。Maneuver.x用的是左闭右开的时间区间[起, 止)这一点非常关键——它保证了相邻机动之间不会重叠也不会留缝。3.2 车辆参数集与 TestRun 参数集分层换来的复用性把参数分成两个文件集是这套体系里最实用的设计决定。车辆参数集只回答“这台车是什么”质量、质心、惯量、悬架硬点、弹簧刚度、减振器曲线、轮胎特性。TestRun 参数集只回答“这次怎么跑”机动序列、环境、初始状态、输出清单、时序设置。两者通过一个引用文件关联起来。分层带来的直接收益是组合爆炸被压掉了。一套悬架调校配十套轮胎、跑两百个工况只需要写两百个小文件每个几十行反过来把所有东西塞进一个文件改一个工况就得复制一份完整车辆描述改一处悬架参数得同步改两百个文件早晚会出现版本不一致。当然代价是多了一层文件排查时得顺着 include 链一路往上翻所以我一般会在 TestRun 文件末尾加一个输出把最终展开的参数树落盘留存出问题直接看展开后的结果不去猜。同一层里还有载荷与随机数的设置。车辆和挂车的载荷分配会改变质心高度与轴荷比随机数生成器的种子则挂在驾驶员噪声、传感器噪声、载荷随机化这些环节上。固定种子是 A/B 对比的前提——种子不固定同一个工况跑两次的差异可能比你要验证的改动还大这种“玄学”现象我见过不止一次。3.3 机动列表纵向与横向两条通道怎么拼成一次 TestRun驾驶机动这一章的组织方式很有意思它不按“工况”分类而是按纵向动力学和横向动力学拆成两条独立通道。纵向这一侧有内置驾驶员模型、停车、倒车、手动输入、速度控制、速度曲线横向这一侧有驾驶员模型、转向阶跃、正弦转向、正弦扫频、跟随路径的简易转向控制。一个 mini maneuver 只负责在自己的时间片里往对应通道写值两条通道互不干扰。这种解耦的好处是可组合性加速过程中的转向响应就是把速度曲线和正弦转向叠在同一个时间段里不需要为“加速转向工况”单独实现一个机动类型。代价是通道之间没有一致性约束你完全可以写出一个纵向要求 200 km/h、横向要求 40 度转角的物理上不可能的组合平台不会拦你它只负责按时间片把请求发出去。零长度机动那个特例值得说一下。因为机动按左闭右开区间切片最后一个时间片执行到“止”时刻时往往需要一个额外的动作来收尾——触发结束条件、记录最终状态、把车辆置回某个位姿。这个动作没有时间宽度所以用[6.0, 6.0)这种零长度片段承载。我第一次见到这个设计时觉得是取巧后来想明白了既然机动是时间片的列表那么“瞬时动作”在语义上就是一个长度为零的时间片用同一种数据结构表达比额外加一个“结束回调”字段要干净。3.4 驾驶控制ACC、AEB、LKAS 作为参数化被控对象驾驶控制这一层提供的是 Generic 参数化控制器。纵向有自适应巡航、自动紧急制动、前向碰撞预警横向有车道保持辅助和车道偏离预警。它们的工作方式高度一致读取本车状态与前车或车道信息按阈值和增益算出请求量纵向输出的是减速度请求横向输出的是转向力矩请求。这个“只输出请求”的设计是整个模块能成立的前提。控制器不知道车辆模型内部怎么算车辆模型也不关心请求是谁给的两边通过一个窄接口连接。于是同一套控制器可以接在仿真车辆上也可以把请求下发给硬件在环台架上的真实 ECU反过来真实 ECU 的请求也能喂给仿真车辆。AEB 的典型参数化方式是碰撞时间阈值加分级的减速度请求斜率FCW 是预警距离阈值LKAS 是横向偏移与航向误差的比例反馈。这类模型可解释性好、容易对标法规测试场景但真实控制器的内部状态机它模拟不了——所以手册同时留了 ECU 参数和标准化联合仿真接口什么时候用参数化模型、什么时候接真实控制器取决于你要验证的是策略逻辑还是控制器实现。4. 运行时定步长调度、实时监控与计算链的顺序约束4.1 循环时序谁在 1 ms 里跑谁在 100 ms 里跑仿真是定步长的基础周期通常取 1 ms也就是 1 kHz。但整车模型里各模块的物理时间尺度差得很远轮胎松弛与悬架高频振动需要毫秒级控制器通常 10 ms 就够传感器模型和部分环境更新 100 ms 完全够用。做法是统一在基础步长上跑各模块用整数计数器做分频计数器归零的那一拍才真正执行自己的计算。这样做的机制收益是确定性的调度顺序。每个周期内模块的执行顺序在编译期就固定下来没有动态优先级、没有抢占因此同一个输入序列必然得到同一个输出序列。这对功能安全验证是硬要求——你要能解释清楚第 N 拍发生了什么而不是“大概在那个时间窗口里”。代价是算力浪费低频模块在大部分周期里只是空转一次判断但这点开销比起调度不确定性带来的麻烦微不足道。4.2 实时条件监控超时是怎么被发现的在硬件在环场景下每一拍的可用时间是硬约束如果这一拍的计算耗时超过步长下一拍就会被推迟累积几次之后整个系统就跟不上真实时间了。手册专门有一节讲实时条件监控机制大致是给每个周期打时间戳统计实际耗时与设定步长的差值连续超限就计数超过阈值后按预设策略处理可能是写日志、降级某些模块也可能是触发安全状态。这里的设计取舍是“分级处理”而不是“一出错就停”。硬件在环台架上偶发一两次超时是常态可能只是操作系统调度抖动如果直接中止一个跑了半小时的测试就白费了。所以监控机制记录超时次数和分布让工程师事后判断这次测试的数据还能不能用。我自己踩过的坑是只看了最终结果曲线没看超时日志一段几百毫秒的掉帧被当成模型振荡查了两天。4.3 计算链从车身方程到轮胎接地力顺序为什么不能乱这一节是整套机制的核心。整车模型在一个步长内的计算链大致是先用上一拍汇总的合力对车身做六自由度积分得到新的位姿再由车身位姿反解各悬架的运动学得到轮心位置和车轮姿态然后由轮心位置与相对速度计算力元弹簧、减振器、缓冲块、防倾杆的垂向力接着由轮心速度、侧偏角、外倾角算出轮胎的纵向力与侧向力最后把所有力汇总回车身成为下一拍的输入。def step(t, dt): # 1) 采样请求: 驾驶员/机动序列/驾驶控制器在这一拍给出的意图 req maneuver.sample(t) driver.sample(t) vehicle_control.sample(t) # 2) 车身: 用上一拍汇总的合力积分 6 自由度位姿 body.integrate(dt) # 3) 悬架运动学: 由车身位姿反解轮心位置与车轮姿态 for w in wheels: w.pos, w.orient suspension.kinematics(body, w) # 4) 力元: 弹簧/减振器/缓冲块/防倾杆, 输出垂向力 for w in wheels: w.fz (forces.spring(w) forces.damper(w) forces.bumpstop(w) forces.arb(w)) # 5) 轮胎: 用接地点速度、侧偏角、外倾角算接地力 for w in wheels: w.fx, w.fy tire.magic_formula(w, dt) # 6) 汇总回车身, 作为下一拍积分用的合力 body.apply_forces(collect(wheels))关键依赖关系在第 3 步和第 5 步之间轮胎力依赖轮心位置与车轮姿态而这两者只能由悬架运动学在车身新位姿上算出来。如果把顺序调换先算轮胎再算运动学轮胎用到的就是上一拍的轮心位置相当于给整条力反馈路径插入了一个步长的纯延迟。在低频工况下几乎看不出来但在正弦扫频逼近 5 Hz 时相位滞后会明显偏大你会误以为是轮胎松弛长度参数设错了。链上还有一个容易被忽略的前置步骤平衡态求解。仿真开始之前得先解出车辆静止时各弹簧的压缩量让重力与支撑力平衡。这一步迭代不收敛的话前面几十毫秒会看到一个巨大的冲击之后才慢慢收敛到正常状态——很多人以为是初始条件设错了其实是平衡态没解出来。4.4 悬架运动学与力元线性自由度、查表与叠加悬架这一层提供了三档精度。线性一到三自由度模型把轮跳、转向、外倾这些关系近似成线性映射计算量最小适合大规模工况扫描和控制器初调查表模型用实测或高保真模型生成的曲线描述轮跳与前束、外倾之间的非线性关系精度上一个台阶代价是你得有那份数据柔性模型再往前一步用线性框架、系数式或者位移式的方法描述衬套和衬套连接的弹性变形几套柔性还能叠加另外提供置零操作来定义各自的零位基准。力元这一侧的组织方式是串联叠加主弹簧提供基础刚度二级弹簧用于渐进特性减振器按速度分段给阻尼力缓冲块在压缩到极限后提供陡增的接触刚度防倾杆只对左右轮差动位移产生扭矩。这些力元各自独立参数化互不知道对方的存在最终靠求和合成一条完整的轮荷曲线。好处是每个物理件都能单独对标台架数据坏处是叠加之后的行为难以预测——你在台架上调好了减振器装到整车模型上发现某个频段的响应还是不对问题可能出在缓冲块提前介入把减振器的工作区间挤掉了。此外还有弹性安装的部件比如动力总成悬置它们作为独立的弹性体存在主要影响低频俯仰与抖动参数不多但漏配了就会在对标舒适性指标时露馅。5. 常见问题排查从现象倒推机制的几条经验5.1 参数与约定类问题现象曲线整体平滑但侧向加速度、横摆角速度的方向全部相反。原因几乎总是数据采集通道的轴向约定与车身坐标系不一致横向向右与横向向左的差别在单个信号上看着只是正负号但一旦参与反馈控制符号反了会让控制器朝错误方向修正。解决办法是在数据导入层做一次显式转换用同时翻转两个轴的旋转矩阵保持右手性绝不在模型内部做符号修补——模型里改符号下一个接手的人一定会重新踩一遍。现象明明改了车辆参数仿真结果一点变化都没有。最常见的原因是 include 顺序后面的文件把前面的赋值覆盖掉了你改的那份文件在覆盖链里处于上游。其次是 Model kind 走了另一套拓扑分支那几个键压根没被解析。排查办法是把最终展开的参数树完整输出一份直接在里面搜你改的那个键看它最终等于多少不用猜。现象多人协作后某个输出通道的数值变得莫名其妙。命名冲突。两个模块取了同一个前缀加同一个量类别后注册的静默覆盖先注册的界面上那列信号的来源已经换了但名字没变脚本照常读读到的却是别的东西。解决方法是在项目初期就把命名空间划分好把输出量清单当成接口文档维护。5.2 运行时与数值类问题现象台架跑几分钟后开始丢帧结果出现周期性抖动。原因通常是某个本该降频的模块被挂在了基础步长上比如某个传感器模型按 1 kHz 全量计算把单拍耗时顶过了步长也可能是实时监控的阈值设得太松超时了但没报警你只能从结果里看到症状。排查方式是统计每拍耗时的分布看峰值落在哪个模块而不是盯着最终曲线猜。现象起步后的前几十毫秒出现一个巨大的冲击随后恢复正常。平衡态没解出来或者迭代没收敛但程序没拦。整车静止时弹簧已经有压缩量如果初始状态按自由长度给第一步就会产生一个等于重力的阶跃力。解决是把平衡态求解作为仿真的强制前置步骤不收敛就不允许启动而不是让它带着初始冲击跑下去。现象同一个工况跑两次结果有细微差别。随机数种子没固定噪声源每次都不一样或者机动列表的时间边界没有闭合某个零长度片段被执行了两次导致某个瞬时动作重复触发。前者的解决是种子写进 TestRun 文件并纳入版本管理后者得把机动区间画在时间轴上逐段核对。6. 文本参数、查表与叠加这套设计到底在赌什么把这几章的机制串起来看会发现整套体系押注在一个判断上仿真资产的可复现性比配置的易用性更重要。参数全放纯文本意味着它能进版本控制、能 diff、能被脚本批量生成、能在几年后翻出来还看得懂归档机制把最终展开的参数树整个打包连同几何与轮胎数据一起保证三年前那次测试今天还能原样重跑。这个收益是长期的代价也很明确没有 schema 校验键名拼错一个字母照样通过只是那行配置静默失效。所以手册里才会有量审计、调试暂存区这类配套工具它们不是锦上添花而是文本方案必须付的“税”。第二层取舍在模型精度的分档上。三种悬架运动学建模方式的定位差异很清晰建模方式所需数据单拍计算成本外推行为典型用途线性自由度模型少量硬点与线性系数最低线性外推大行程失真工况扫描、控制器初调查表非线性模型台架实测或高保真模型曲线中等超出表格范围按边界或插值操稳对标、极限工况位移式柔性模型衬套刚度与位移映射较高依赖模型本身定义域精细舒适性与转向手感选型逻辑不是“越准越好”而是“你的验证目标是否落在该模型的置信区间里”。用线性模型去调极限转向手感调出来的参数没有物理意义用位移式柔性模型去跑几千个工况做参数扫描算力根本不允许。同理力元串联叠加的灵活性换来了参数耦合的调试成本——每个件单独对标很容易整条轮荷曲线一起对标才见功夫。验证方法上我习惯先做单机动的开环对标再做闭环。转向阶跃看稳态横摆增益和瞬态超调正弦扫频看幅频特性和相位滞后减速带或单边凸起看垂向与侧倾的耦合响应这几条曲线对上了才敢往闭环场景里放控制器。哪一条对不上就顺着计算链往回倒先看轮荷是否合理再看悬架运动学输出最后才怀疑轮胎参数。从那以后我每次拿到一套新模型都强制先跑一遍静置平衡和低速直线把六个自由度的静态值打出来逐项核对再走单机动扫频。这套流程救过我很多次因为绝大多数“模型不准”的问题在静态和低速阶段就已经暴露了。希望帮到你。本文还有配套的精品资源点击获取
RELATED

相关推荐

3D建模技术对比:倾斜摄影与3DGS在数字孪生中的应用

3D建模技术对比:倾斜摄影与3DGS在数字孪生中的应用

1. 三维建模技术演进:从倾斜摄影到3DGS的范式转移 纪元塔项目作为城市地标建筑的数字化案例,恰好成为检验两种主流三维建模技术的试验场。传统倾斜摄影建模通过多角度航拍照片生成三角网格模型,而新兴的3DGS(3D Gaussian Splattin…

📅 2026/10/29 8:49:20
SEO优化全攻略:从技术审计到内容策略

SEO优化全攻略:从技术审计到内容策略

1. SEO服务全景解析:从基础优化到战略布局 刚入行的市场部同事上周问我:"公司花大价钱做的SEO到底在做什么?"这个问题让我意识到,很多人对SEO服务的认知还停留在"发发外链、改改关键词"的层面。事实上&#x…

📅 2026/10/29 8:44:16
事件驱动架构在AI资源动态调度中的实践

事件驱动架构在AI资源动态调度中的实践

1. 项目概述:事件驱动架构遇上AI原生应用当Kafka的实时事件流撞上AI模型的动态资源需求,一场关于效率的革命正在发生。这个项目要解决的核心问题是:如何让AI应用的资源分配像水龙头一样,需要时立刻打开,不用时自动关闭…

📅 2026/10/29 8:44:16
MORE NEWS

更多资讯

📰

GPU加速TTI正演与逆时偏移:CUDA实现与ADCIGS生成

简介:面向地震波场模拟与高性能计算方向的研究者与工程师,这份资源聚焦二维TTI各向异性介质下的有限差分正演与逆时偏移实现,并借助CUDA将计算密集的波场传播与成像过程迁移到GPU并行加速,适合已具备波动方程与有限差分基础、希望…

📰

PFMEA入门实战:从过程流程图到控制计划的完整指南

简介:这是一份面向制造业质量工程师、工艺开发人员及质量管理入门者的PFMEA培训课件,聚焦过程潜在失效模式及后果分析这一核心工具,帮助读者理解并掌握过程风险识别、评估与改善的完整方法。资源包内含1个PPT文件,压缩包约581KB&a…

📰

【贪心交换排序】题解:P11376 [GESP202412 六级] 运送物资_贪心模型_排序_模拟_C++算法竞赛

文章目录题目描述题解时间限制1.00s内存限制512.00MB提供者沉石鱼惊旋难度普及/提高−标签贪心排序GESP2024题目描述 小杨管理着 mmm 辆货车,每辆货车每天需要向 A 市和 B 市运送若干次物资。小杨同时拥有 nnn 个运输站点,这些站点位于 A 市和 B 市之间…

📰

【CPU】Hypervisor 中 LHP / LWP 问题

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📰

开拓者:正义之怒 职业构建:3步走完开卡到毕业

开拓者:正义之怒 职业构建:3步走完开卡到毕业 【免费下载链接】Wotr-BD-LR 正义之怒Wotr主角BD搜集 项目地址: https://gitcode.com/GitHub_Trending/wo/Wotr-BD-LR 本文是 开拓者:正义之怒 职业构建 实战攻略,基于 Wotr-B…

📰

[Web3] 去中心化基石 - BIP铁三角(BIP32/39/44)

🏗️ 去中心化的身份基石:BIP 铁三角(BIP32 / BIP39 / BIP44) 很多年前,我们初次接触互联网或社会时,总是需要向中心化机构“申请身份”: 👤 注册 QQ 账号、游戏账号;&…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬