摘要: 思路:读取输入的节点数 n,并循环处理每个数据集,直到 n 为 0。对于每个数据集,读取每个节点的邻接信息并构建图。遍历每个节点作为起点,调用 dijkstra 算法计算最短路径。检查是否所有节点都可达,如果可达则记录最大距离,并更新最佳节点和最小时间。最后输出结果,如果没有找到合适的节点则输出 d 阅读全文
posted @ 2025-02-19 23:15 1inkin_sub 阅读(36) 评论(0) 推荐(0)
摘要: 思路:max_sum 设为极小值,用来存最大子段和。current_sum 设为 0,存当前子段和。对每个元素 num,更新 current_sum 为 max(num, current_sum + num)。这意味着要么以 num 开始新子段,要么把 num 加入当前子段,取和更大的情况。再用 m 阅读全文
posted @ 2025-02-16 22:19 1inkin_sub 阅读(10) 评论(0) 推荐(0)
摘要: 思路:从最小的数字 1 开始,不断尝试将其添加到当前的拆分序列中,然后递归地对剩余的数字进行拆分。在递归过程中,每次选择的数字不小于上一次选择的数字,这样可以保证生成的拆分序列是按字典序排列的。排除只包含 n 本身的拆分情况,因为题目要求拆分成若干个小于 n 的自然数之和。将满足条件的拆分序列按字典 阅读全文
posted @ 2025-02-13 22:41 1inkin_sub 阅读(20) 评论(0) 推荐(0)
摘要: 思路:从标准输入读取两个大整数,并将它们对19260817取模以避免溢出。使用扩展欧几里得算法求解的一组整数解以及最大公约数。根据同余方程有解的充要条件判断方程是否有解。若方程有解,求出最小非负整数解并输出;若无解,输出 "Angry!"。 思路:根据 P * Q = gcd(P, Q) * lcm 阅读全文
posted @ 2025-02-11 00:41 1inkin_sub 阅读(53) 评论(0) 推荐(0)
摘要: 思路:使用 while(cin >> op) 不断从标准输入读取操作命令,该循环会持续执行,直到输入结束或者满足跳出条件。若读取到的命令为 "end",则使用 break 语句跳出循环,结束程序的操作处理流程。当读取到的操作命令为 "insert" 时:继续从标准输入读取一个整数 k。调用优先队列的 阅读全文
posted @ 2025-02-07 17:41 1inkin_sub 阅读(17) 评论(0) 推荐(0)
摘要: 思路:find 函数用于执行二分查找操作计算中间位置 mid= left + (right - left) / 2 将中间位置的元素 a[mid] 与目标元素 num 进行比较:若 a[mid] 等于 num,说明找到了目标元素,函数返回 true。若 a[mid] 小于 num,说明目标元素在 m 阅读全文
posted @ 2025-01-26 16:48 1inkin_sub 阅读(50) 评论(0) 推荐(0)
摘要: 思路:利用循环控制“o”的个数 思路:将所有字母转化为大写,然后与“YES”进行比较,看是否符合 思路:把数字当作字符串,取其最后一位数字进行奇偶判断 思路:创建一个整形向量count,来统计字母的出现次数。之后通过遍历字符串,在对应索引上加一。定义一个ans,来统计需要添加字母的数量。遍历coun 阅读全文
posted @ 2025-01-23 16:19 1inkin_sub 阅读(30) 评论(0) 推荐(0)