20240602 用友JAVA笔试

有没有人捞一捞鼠鼠,发两个笔试攒攒人品

这公司是唯一一个在牛客网上考但是用力扣模式的

第一题,原题house robber (隔至少一个rob一次)
第二题,给定字符串和整数k,找出通过k次替换可以变为相同字母的最长substring

用例很小就直接暴力了

第三题,给定int[] jobs, int n,表示一系列任务的时长和员工数,每个任务只能分给一个人,通过最优分配使得最慢完成的员工用时最短,返回最少时长,n,jobs.length<=12

注意这里有陷阱,一开始尝试把最长的任务分配给闲置的worker,但是对这个例子会给出错误的答案:[100, 100, 80, 80, 40], n = 2,正解是200,换了一个回溯解决了

第四题:给定int[] hungers表示每个员工的饥饿度,现在分配棒棒糖,返回需要最少的棒棒糖数目,满足:每个员工至少分得一个糖,且如果相邻的员工饥饿度不一样,则更饥饿的员工必须分得严格更多的棒棒糖,但是不相邻的就不需要满足限制了,比如[3,4,4]应该返回4=1+2+1

这个题的解法是排序,然后从最小的值开始分糖,分的时候比较一下周围的两个邻居是不是已经有糖了,从1开始讨论取一个最小值分给他即可
全部评论

相关推荐

2 3 评论
分享
牛客网
牛客企业服务