iOS
20240925 随机训练
Yukicoder 2897 题目描述 给定两个点集 (S,T),我们定义 (d((x_1,y_1),(x_2,y_2))=|x_1-x_2|+|y_1-y_2|)。 我们定义两个集合 (S,T) 的距离 (D(S,T)=min limits_{sin S,tin T}{d(s,t)})。求 (D(S,T))。 思路 我们把每个 (S) 中的元素放在一起做一个多源 bfs,然后对每个 (T) 中的
bfs 与优先队列————洛谷p1126(历经两个小时总算AC了,哭晕)
机器人搬重物 题目描述 机器人移动学会(RMI)现在正尝试用机器人搬运物品。机器人的形状是一个直径 (1.6) 米的球。在试验阶段,机器人被用于在一个储藏室中搬运货物。储藏室是一个 (Ntimes M) 的网格,有些格子为不可移动的障碍。机器人的中心总是在格点上,当然,机器人必须在最短的时间内把物品搬运到指定的地方。机器人接受的指令有: 向前移动 (1) 步(Creep); 向前移动 (2) 步
[GYM103119K][2020 ICPC Asia Macau] Candy Ads 题解
题意简述 有 (n) 个广告,每个广告在一个时间段内占据二维平面的矩形,(m) 个约束表示两个广告至少有一个要被选择,选择若干广告,满足所有约束且同时刻不能有重叠的广告。 Kosaraju 算法流程 在正图上跑一遍 DFS,给每个位置打上时间戳 从时间戳大到小枚举点,在反图上跑 DFS,这个时候对于一个起点,他能搜到的所有点就和他在同一个强连通分量里。 思路 考虑 2-SAT,可以 (O(n^
vite optimizeDeps 配置 预编译的包
说明 主要用来让vite启动的时候预编译一些包,而不是运行网页的时候才编译,这样可以加快网页首次的加载速度,但是可能vite首次启动会比较慢点 配置示例 前端工程师、程序员
关于gcd和exgcd的一道ICPC题的解法与回顾部分知识点
(gcd)的本质原理 (gcd(x,y))与(gcd(y,)x%y())之所以等价 证明如下: 设(x)与(y)的本质公约数为d (x=m*d),(y=n*d) 令(x/y=k) (x)%y(==x-x/y*y==m*d-k*n*d==(m-n*k)d) 如果(x)是(y)的倍数,则(m-n*k==0),返回(y) 否则,数值缩小进一步靠近最大公约数 代码 (exgcd(x,y,x1,y1))的
勇攀山丘小队(翻越篇)1——题解
前言 胸有丘壑,气吞山河。 正片 A 题: 考虑使用 DP,由于题目给了 2 个 a 不能在一起的限制,所以每次接上一个 a 都要考虑一下前面的一个状态是否也是 a。 于是就可以使用 (f,g) 数组,(f_i) 表示第 (i) 个字母是 a 的合法情况有多少,(g_i) 表示第 (i) 个字母是 b 或 c 的合法情况有多少。 预处理出 (i=1) 的情况,即 (f_1=1,g_1=2)。
QBXT 4242.小葱拿糖
统计五个数组,(v_i) (i)点的美味值(权值),f_i 当前节点到根节点的权值和,(m_{i,0/1}) i 的最大/次大向下走的路径权值和(不包括点 (i) ),(g_{i,0/1}) 从 i 点向上走的,或者走其他子树的最大路径(0/1 = 包含/不包含 (m_{i,0}))。(st_i) i 在不在 fa 的 (m_{i,0}) 上。 其中除了 g 都易得,而 g 可以通过在树上递推,递
Codeforces Round 971 (Div. 4)A~G1
Codeforces Round 971 (Div. 4)A~G1 A. Minimize! 签到不多说。 B. osu!mania 签到+1 C. The Legend of Freya the Frog 这边有个小细节,因为总是x方向优先的,所以需要判断一下(类似于黑子先手那样差不多)。 D. Satyam and Counting 因为y的范围是[0,1]并且所有点都是整数点,那么问题
Codeforces Round 964 (Div. 4)A~G1
Codeforces Round 964 (Div. 4)A~G1 A. A+B Again? 签到 B. Card Game 签到,但注意一下平局 C. Showering 因为没有交集,那么直接左断点排序然后一个个判断就行了。 D. Slavic's Exam 注意一下是子序列。然后对于目标串每一个字母进行判断是否能存在即可。 E. Triple Operations 题意:给你一段连
ARC084 B Small Multiple 题解
原题链接 Description 给定一整数 (k) , 求一个 (k) 整数倍的数 (x) ,使得 (x) 的数位累加和最小,输出最小的累加和。 Solution 这道题简单但值得一想。 正着枚举每一个 (k) 整数倍的数 (x) 肯定会超时,反过来考虑,可以找一个数 (x) 使其为 (k) 的倍数,那么对于每个数 (x) ,均有以下两种操作: 将这个数 (times 10) ,对应花费为
ABC188 F - +1-1x2 题解
原题链接 Description 给定两个数字 (x) 和 (y) ,以及三种操作,分别可以为 (x+1) ,(x-1) , (xtimes2) , 请问将 (x) 变为 (y) 的最小操作数。 Solution 可以直接暴力搜,但肯定会重复搜到同个数字,考虑记忆化搜索。 若从 (x) 开始操作的话,那么三种操作就都需要搜一次,没有必要的搜索就会变多,可以考虑反着搜,那么我们就可以根据当前数的奇偶
PO、DTO、VO、BO 及其使用场景
基于 说清楚 PO、DTO、VO、BO 与使用场景 简介 PO(Persistent Object)/DO(Data Object):此对象与数据库表结构一一对应,通过 DAO 层向上传输数据源对象。 DTO(Data Transfer Object):数据传输对象。Service 或 Manager 向外传输的对象。 BO(Business Object):业务对象。可以由 Service
ABC186 F - Rook on Grid 题解
原题链接 Description 给定 (H) 行 (W) 列的格网,其中有 (M) 个障碍,有一起点 ((1,1)) ,可以横着或竖着走多个格子,求走两步以内可以达到的格子数。 Solution 显然我们先要维护: (x[i]) 表示第 (i) 行第一个障碍的下标,若没障碍,则设为 (W+1) (y[i]) 表示第 (i) 列第一个障碍的下标,若没障碍,则设为 (H+1) 那么容易统计答案: 对
阿里云点播SDK集成(一)上传篇
目前项目中用到的就是阿里云的点播包括视频上传及播放,有做短视频的宝子们可以借鉴一下,避免少走弯路 1.省略开通或配置阿里云点播服务的平台配置,直接是iOS移动端部分,pod SDK 尽量用最新的 #阿里云播放器 pod 'AliPlayerSDK_iOS' #阿里云文件上传 pod 'VODUpload' 2.获取STS服务,所谓的STS就是获取对应的参数(accessKeyId
[LMXOI Round 1] Placer
时隔半年,自己终于从看不懂题解到能独立做出这道题了,开心~ 貌似只有我是把括号序列转化为树,然后跑树形DP的。复习一下:DFS进入某个节点的时候(对应入边)记录一个左括号,退出某个节点的时候(对应回溯边)记录一个右括号,一个节点对应一对括号~ 题解描述的是直接线性DP的做法,对于所有可能的决策点,选择最近的那个为代表(用栈预处理),把其他决策点都体现在代表点上,【探寻决策点之间的规律】 点击
ChatGPT 向更多用户推出高级语音模式:支持 50 种语言;字节发布两款新视频生成大模型丨 RTE 开发者日报
开发者朋友们大家好: 这里是 「RTE 开发者日报」 ,每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享 RTE(Real-Time Engagement) 领域内「有话题的新闻」、「有态度的观点」、「有意思的数据」、「有思考的文章」、「有看点的会议」,但内容仅代表编辑的个人观点,欢迎大家留言、跟帖、讨论。 本期编辑
《如 何 速 通 一 套 题》6.0
邮寄 开场秒掉 A。 然后陷入了无尽的 BCD 循环中...... C 推了我好久,然后没推出来...... A 集合 考虑每一个子集和的贡献。设 (dp_i) 表示子集和为 (i) 的方案数,转移易推。 答案是 [prod limits_{i = 1}^{frac{n(n + 1)}{2}} i^{dp_i} ]但是 (n) 有 (200) 会原地起飞,没事,我们可以取模...... 注意!!
P3311 [SDOI2014] 数数
参考题解做法。 题目 思路 数位 dp + AC 自动机好题。 直接往下递归,dfs(u, ver, limit, st) 表示目前在数字 (n) 的第 (u) 位进行讨论,(ver) 表示当前在 AC 自动机上的节点,(limit) 是是否步步紧逼 (n),只要位数不足 (n) 的位数或者有一位小于 (n) 的那一位就不叫步步紧逼,(st) 表示现在是否已经进入数字,因为很多数字位数不如 (n
Luogu_P10977(AcWing_299) Cut the Sequence 题解
解题思路 考虑线性 dp。 首先如果存在 (a_i>m),那肯定不满足条件,输出 (-1)。 设 (f_i) 表示前 (i) 个数分成若干段,然后每段最大数之和,其中每段内的整数之和不超过 (m)。 (f_i) 肯定是由 (f_j)((1le j<i))转移过来的,也就是前 (j) 个数分好后再加上 ((j,i]) 这一段,所以 ((j,i]) 这一段需要满足 (sumlimits_{
【大数据】HBase
HBase 提供海量半结构/非结构化数据下的实时存储、高并发吞吐、轻SQL分析、全文检索等能力, 结合完备的工具服务,丰富的生态融合,一站式高效满足企业在大数据量场景下的存储、检索、分析需求,是风控、推荐、广告、物联网、车联网、Feeds流、数据大屏等场景的数据库。 应用场景:https://www.alibabacloud.com/help/zh/hbase/product-overview/c
20240913 随机训练
GYM 105293 C 题目描述 有 (N) 个怪物排成一排,第 (i) 个怪物的血量为 (h_i)。当一个怪物的血量 (h_ile 0) 时,则它死亡。 你可以进行以下操作: 选择一个正整数 (x)。 找到第一个 (h_ige x) 的 (i),并令 (h_ileftarrow h_i -x)。 如果该次操作没有影响到任何怪物,或有怪物死亡,则游戏结束。 求在在游戏结束前能做的最多操作。
P4447 [AHOI2018初中组] 分组
[AHOI2018初中组] 分组 题目描述 小可可的学校信息组总共有 $n$ 个队员,每个人都有一个实力值 $a_i$。现在,一年一度的编程大赛就要到了,小可可的学校获得了若干个参赛名额,教练决定把学校信息组的 $n$ 个队员分成若干个小组去参加这场比赛。 但是每个队员都不会愿意与实力跟自己过于悬殊的队员组队,于是要求分成的每个小组的队员实力值连续,同时,一个队不需要两个实力相同的选手。举个例子:
Prefix of Suffixes
为什么求Z函数的过程又被称为【扩展KMP】呢?因为KMP算法是可以求出哪些后缀能与前缀完全匹配的,而Z函数则对于那些不能完全匹配的后缀,求出了最大的匹配长度 现在你已经将问题转化为:在未被标记的后缀中,快速锁定当前新增的字符会使得哪些后缀失配 “未被标记”太抽象了,回溯这个条件——在【当前能与前缀完全匹配的后缀中】,这不就是【KMP】求的东西嘛! 点击查看代码
std::vector::reserve
std::vector::reserve 函数在 C++ 中用于预分配内存,避免在元素增加时多次重新分配内存,从而提高性能。 它最常用于需要频繁向 vector 中添加元素,并且可以预估容器的最终大小的场景。 作用 reserve 函数的主要作用是: 预分配容量:它提前为 vector 分配一定数量的内存(但不会改变当前 vector 的元素数量 size)。也就是说,它只是增加 vector
仿函数(Functor)是什么?
仿函数(Functor) 仿函数是通过重载()运算符的类或结构体的对象。这样一个对象可以像普通函数一样被调用。 仿函数通常用于需要在对象内部保留状态或多次调用时有特定行为的情况。 特点: 仿函数是一个类对象。 通过重载 () 运算符使得类对象像函数一样可以被调用。 可以在类中保留状态或成员变量,提供比普通函数更复杂的逻辑和功能。 适合在需要复用逻辑和状态的场景中使用。 示例: Lambda