算法
文章平均质量分 65
jinchengwu3344
这个作者很懒,什么都没留下…
展开
-
华为OD机试题-贪心歌手
歌手准备从 A 城去 B 城参加演出输出歌手在旅途中最多能挣多少钱。第一行两个数字 T 和 N,中间用空格隔开。第二行 N+1 个数字,中间用空格隔开。代表每两座城市之间耗费的时间。其总和 ≤ T。接下来 N 行,每行两个数字 M 和 D,中间用空格隔开。代表每个城市的输入预期。说明。原创 2024-07-09 11:27:25 · 471 阅读 · 0 评论 -
华为OD机试题-精准核酸检测
为了达到新冠疫情精准防控的需要,为了避免全员核酸检测带来的浪费,需要精准圈定可能被感染的人群。现在根据传染病流调以及大数据分析,得到了每个人之间在时间、空间上是否存在轨迹的交叉。现在给定一组确诊人员编号(X1,X2,X3…Xn) 在所有人当中,找出哪些人需要进行核酸检测,输出需要进行核酸检测的人数。(注意:确诊病例自身不需要再做核酸检测)需要进行核酸检测的人,是病毒传播链条上的所有人员,即有可能通过确诊病例所能传播到的所有人。原创 2024-07-08 19:18:36 · 264 阅读 · 0 评论 -
华为OD机试题-寻找身高相近的小朋友
小明今年升学到小学一年级Q,来到新班级后发现其他小朋友们身高参差不齐,然后就想基于各小朋友和自己的身高差对他们进行排序,请帮他实现排序。输入描述:第一行为正整数H和N,0<H<200,为小明的身高,0<N<50,为新班级其他小朋友个数第二行为N个正整数H1-HN,分别是其他小朋友的身高,取值范围0<Hi200(1<==N),N个正整数各不相同输出描述:输出排席结果,各正整数以空格分割。原创 2024-07-08 17:44:47 · 242 阅读 · 0 评论 -
华为OD机试题-提取字符串中最长数学表达式
【代码】华为OD机试题-提取字符串中最长数学表达式。原创 2024-07-08 15:49:57 · 198 阅读 · 0 评论 -
华为OD机试题- API 集群负载统计
题目描述某个产品的RESTful API集合部署在服务器集群的多个节点上,近期对客户端访问日志进行了采集,需要统计各个API的访问频次,根据热点信息在服务器节点之间做负载均衡,现在需要实现热点信息统计查询功能。RESTful API是由多个层级构成,层级之间使用 / 连接,如 /A/B/C/D 这个地址,A属于第一级,B属于第二级,C属于第三级,D属于第四级。现在负载均衡模块需要知道给定层级上某个名字出现的频次,未出现过用0表示,实现这个功能。输入描述。原创 2024-07-08 11:49:41 · 284 阅读 · 0 评论 -
华为OD机试题-字符串重新排列
字符串重新排列给定一个字符串s,s包括以空格分隔的若干个单词,请对s进行如下处理后输出:1、单词内部调整:对每个单词字母重新按字典序排序2、单词间顺序调整:1)统计每个单词出现的次数,并按次数降序排列2)次数相同,按单词长度升序排列3)次数和单词长度均相同,按字典升序排列请输出处理后的字符串,每个单词以一个空格分隔。输入描述:一行字符串,每个字符取值范围:【a-ZA-Z0-9】以及空格,字符串长度范围:【1,1,1000】原创 2024-07-08 11:32:59 · 256 阅读 · 0 评论 -
【华为OD机试题】停车场车辆统计
车辆大小不一,小车占一个车位(长度1),货车占两个车位(长度2),卡车占三个车位(长度3),统计停车场最少可以停多少辆车,返回具体的数目。整型字符串数组cars[],其中1表示有车,0表示没车,数组长度小于1000。特定大小的停车场,数组cars[]表示,其中1表示有车,0表示没车。要想停最少的车,那就是要让有车的地方尽可能的都是卡车。整型数字字符串,表示最少停车数目。原创 2024-07-07 16:23:50 · 140 阅读 · 0 评论 -
[动态规划] 6 背包问题
参考:动态规划之背包问题动态规划之背包问题系列背包问题-笔记整理动态规划:完全背包、多重背包《背包九讲》注:本文内容大多来源于《背包九讲》。目前,只学习了:0-1背包问题完全背包多重背包(其中“可行性问题 O(V N) 的算法”暂时未看)1 概念背包问题是一类经典的动态规划问题。1.1 什么是背包问题维基百科-背包问题:背包问题(Knapsack problem)是一种组合优化的NP完全问题。问题可以描述为:给定一组物品,每种物品都有自己的重量和价格,在限定的总重量内,.原创 2021-09-03 14:56:05 · 318 阅读 · 0 评论 -
[动态规划-练习] 5 最长公共子序列问题详解
参考:详解最长公共子序列问题,秒杀三道动态规划题目两个字符串的最小 ASCII 删除和原作者总结出来的解决算法的一个技巧:把大的问题细化到一个点,先研究在这个小的点上如何解决问题,然后再通过递归/迭代的方式扩展到整个问题。本文从「最长公共子序列问题」展开,总结三道子序列问题,解这道题仔细讲讲这种子序列问题的套路,你就能感受到这种思维方式了。1 最长公共子序列计算1143. 最长公共子序列(Longest Common Subsequence,简称 LCS)是一道经典的动态规划题目:力.原创 2021-07-13 22:08:36 · 434 阅读 · 1 评论 -
[动态规划]4 状态压缩(空间优化)
参考:对动态规划发动降维打击动态规划的优化动态规划之空间优化与总结回顾动态规划本身也是可以进行阶段性优化的,比如说我们常听说的「状态压缩」技巧,就能够把很多动态规划解法的空间复杂度进一步降低,由 O(N^2) 降低到 O(N)。能够使用状态压缩技巧的动态规划都是二维 dp 问题。你看它的状态转移方程,如果计算状态 dp[i][j] 需要的都是 dp[i][j] 相邻的状态,那么就可以使用状态压缩技巧,将二维的 dp 数组转化成一维,将空间复杂度从 O(N^2) 降低到 O(N)。状态压.原创 2021-07-12 19:18:38 · 1265 阅读 · 0 评论 -
[动态规划] 什么是动态规划
参考:什么是动态规划?动态规划的意义是什么?(转自知乎)什么是动态规划(Dynamic Programming)?动态规划的意义是什么? - 阮行止的回答 - 知乎 https://www.zhihu.com/question/23995189/answer/613096905公式符号:$\left \lceil \right \rfloor $本文可以顺便搞明白 “递推、贪心、搜索” 与 “动态规划”之间的关系。动态规划是解决「某一类问题」动态规划是对「某一类问题」的解决方法,.原创 2021-07-02 17:32:17 · 518 阅读 · 0 评论 -
递推 | 递归 | 迭代
参考:递归、迭代与递推三者的差别再谈循环&迭代&回溯&递归&递推这些基本概念递归递归:从所需结果出发不断回溯前一运算直到回到初值再递推得到所需结果----从未知到已知,从大到小,再从小到大。递归(Recursion)是从归纳法(Induction)衍生出来的。⌈递归⌋\left\lceil {递归} \right\rfloor⌈递归⌋ 在编程时体现为程序调用自身的编程技巧。即函数 自己调用自己。一个完整的递归应该有下面三个条件,否则就是不合格的递归.原创 2021-07-02 16:11:55 · 865 阅读 · 0 评论