题目描述: 记账本上记录了若干条多国货币金额,需要转换成人民币分(fen),汇总后输出。 每行记录一条金额,金额带有货币单位,格式为数字+单位,可能是单独元,或者单独分,或者元与分的组合。 要求将这些货币全部换算成人民币分(fen)后进行汇总,汇总结果仅保留整数,小数部分舍弃。 元和分的换算关系都是1:100,如下: 1CNY=100fen(1元=100分) 1HKD=100cents(1港元=1
题目描述: 日志采集是运维系统的的核心组件。日志是按行生成,每行记做一条,由采集系统分批上报。 如果上报太频繁,会对服务端造成压力;如果上报太晚,会降低用户的体验;如果一次上报的条数太多,会导致超时失败。 为此,项目组设计了如下的上报策略: 1、每成功上报一条日志,奖励1分 2、每条日志每延迟上报1秒,扣1分 3、积累日志达到100条,必须立即上报 给出日志序列,根据该规则,计算首次上报能获得的最
题目描述: 给你一个整数数组nums,请计算数组的中心位置 。数组中心位置是数组的一个下标,其左侧所有元素相乘的积等于右侧所有元素相乘的积。 数组第一个元素的左侧积为1,最后一个元素的右侧积为1 如果数组有多个中心位置,应该返回最靠近左边的那一个。如果数组不存在中心位置,返回 -1 。 输入描述: 输入只有一行,给出N个正整数用空格分格:nums = 2 5 3 6 5 6 1 <= nums.l
题目描述: 信号传播过程中会出现一些误码,不同的数字表示不同的误码ID,取值范围为1~65535,用一个数组记录误码出现的情况。每个误码出现的次数代表误码频度,请找出记录中包含频度最高误码的最小子数组长度。 输入描述: 误码总数目:取值范围为0~255,取值为0表示没有误码的情况。 误码出现频率数组:误码ID范围为1~65535,数组长度为1~1000。 输出描述: 包含频率最高的误码最小子数组长
题目描述: Maven版本号定义,<主版本>.<次版本>.<增量版本>-<里程碑版本> 举例3.1.4-beta 其中,主版本和次版本都是必须的,主版本,次版本,增量版本由多位数字组成,可能包含前导零,里程碑版本由字符串组成。 <主版本>.<次版本>.<增量版本>:基于数字比较 里程碑版本:基于字符串比较,采用字典序 比较版本号时,按从左到右的顺序依次比较。基于数字比较, 只需比较忽略任何前导零后
题目描述: 给定一个单链表 L,请编写程序输出 L 中间结点保存的数据。如果有两个中间结点,则输出第二个中间结点保存的数据。 例如:给定 L 为 1→7→5,则输出应该为 7;给定 L 为 1→2→3→4,则输出应该为 3。 输入描述: 每个输入包含 1 个测试用例。每个测试用例第 1 行给出链表首结点的地址、结点总个数正整数 N (≤105)。结点的地址是 5 位非负整数,NULL 地址用 −1
题目描述: 给定两个字符串string1和string2。 string1是一个被加扰的字符串。string1由小写英文字母('a'~'z')和数字字符('0'~'9')组成,而加扰字符串由'0'~'9'、'a'~'f'组成。string1里面可能包含0个或多个加扰子串,剩下可能有0个或多个有效子串,这些有效子串被加扰子串隔开。 string2是一个参考字符串,仅由小写英文字母('a'~'z')组
题目描述: 你现在是一场采用特殊赛制投篮大赛的记录员。这场比赛由若干回合组成,过去几回合的得分可能会影响以后几回合的得分。 比赛开始时,记录是空白的。你会得到一个记录操作的字符串列表 ops,其中 ops[i] 是你需要记录的第 i 项操作,ops 遵循下述规则: 整数 x - 表示本回合新获得分数 x "+" - 表示本回合新获得的得分是前两次得分的总和。 "D" - 表示本回合新获得的得分是前
题目描述: 任务编排服务负责对任务进行组合调度。参与编排的任务有两种类型,其中一种执行时长为taskA,另一种执行时长为taskB。任务一旦开始执行不能被打断,且任务可连续执行。服务每次可以编排num个任务。请编写一个方法,生成每次编排后的任务所有可能的总执行时长。 输入描述: 第1行输入分别为第1种任务执行时长taskA,第2种任务执行时长taskB,这次要编排的任务个数num,以逗号分隔。 输
题目描述: 给定2个字符串s1和s2和正整数k,其中s1长度为n1,s2长度为n2,在s2中选一个子串,满足: 该子串长度为n1+k 该子串包含s1中全部字母 该子串每个字母的出现次数不小于s1中对应的字母 我们称s2以长度k冗余覆盖s1。给定s1、s2和k,求最左侧的s2以长度k冗余覆盖s1的子串的首个元素的下标,如果没有返回-1 举例: s1=ab s2=aabcd k=1 则子串aab和
题目描述: 给一个二维数组nums,对于每一个元素num[i],找出距离最近的且值相等的元素,输出横纵坐标差值的绝对值之和,如果没有等值元素,则输出-1。 例如: 输入数组nums为 0 3 5 4 2 2 5 7 8 3 2 5 4 2 4 对于 num[0][0] = 0,不存在相等的值。 对于 num[0][1] = 3,存在一个相等的值,最近的坐标为num[1][4],最小距离为4。 对
题目描述: 在一个狭小的路口,每秒只能通过一辆车,假如车辆的颜色只有3种,找出N秒内经过的最多颜色的车辆数量 三种颜色编号为0,1,2 输入描述: 第一行输入的是通过的车辆颜色信息 [0,1,1,2] 代表4秒钟通过的车辆颜色分别是0,1,1,2 第二行输入的是统计时间窗,整型,单位为秒 输出描述: 输出指定时间窗内经过的最多颜色的车辆数量 示例1 输入: 0 1 2 1 3 输出: 2 说明:
题目描述: 公司某部门软件教导团正在组织新员工每日打卡学习活动,他们开展这项学习活动已经一个月了,所以想统计下这个月优秀的打卡员工。每个员工会对应一个id,每天的打卡记录记录当天打卡员工的id集合,一共30天。 请你实现代码帮助统计出打卡次数top5的员工。假如打卡次数相同,将较早参与打卡的员工排在前面,如果开始参与打卡的时间还是一样,将id较小的员工排在前面。 注:不考虑并列的情况,按规则返回前
import java.util.Scanner; public class MySolution { }
题目描述: 部门组织绿道骑行团建活动。租用公共双人自行车骑行,每辆自行车最多坐两人、做大载重M。 给出部门每个人的体重,请问最多需要租用多少双人自行车。 输入描述: 第一行两个数字m、n,自行车限重m,代表部门总人数n。 第二行,n个数字,代表每个人的体重。体重都小于等于自行车限重m。 0 < m <= 200 0 < n <= 1000000 输出描述: 最小需要的双人自行车数量。 示例1 输入