首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
在线笔面试、雇主品牌宣传
登录
/
注册
求一个一个offer
获赞
96
粉丝
0
关注
1
看过 TA
1
男
湖北青年职业学院
2019
Java
IP属地:未知
暂未填写个人简介
私信
关注
拉黑
举报
举报
确定要拉黑求一个一个offer吗?
发布(6)
评论
刷题
收藏
求一个一个offer
关注TA,不错过内容更新
关注
2018-11-20 15:26
已编辑
湖北青年职业学院 Java
爱情?面包?
看到好多小哥哥,小姐姐都在爱情和面包中选择,不禁之间有好多感想 倘若爱情还会回来,我会义无反顾的放弃面包吧,唉~ 不过每个人都是有自己想法吧,余生很长,一直回馈着选择
rora:
我始终认为不管做哪种决定,n年后都会后悔,还不如选一个当时不后悔的决定😳
0
点赞
评论
收藏
分享
2019-01-23 13:05
已编辑
湖北青年职业学院 Java
望京求男室友
有在望京实习的老哥吗,求个室友,个人无不良爱好,好相处~
0
点赞
评论
收藏
分享
2018-10-20 17:45
湖北青年职业学院 Java
求好运
最近一周求好运,求开奖!
0
点赞
评论
收藏
分享
2018-10-11 08:42
已编辑
湖北青年职业学院 Java
滴滴笔试(求第一题实现逻辑)
# -*- coding:utf-8 -*- class Solution: def IsPopOrder(self, pushV, popV): # 检验二者长度是否相等 if not pushV or len(pushV)!=len(popV): return False stack = [] for i in pushV: stack.append(i) while len(stack) and stack[-1] == popV[0]: stack.pop() popV.pop(0) #验证最终栈中所有元素都清空 if len(stack): return False return ...
Yummy蛋卷:
魔法权杖强化 题目描述: 有一把魔法权杖,权杖上有n颗并排的法术石(编号为1到n)。每颗法术石具有一个能量值,权杖的法术强度等同于法术石的最小能量值。权杖可以强化,一次强化可以将两颗相邻的法术石融合为一颗,融合后的能量值为这两颗法术石能量值之和。现在有m次强化的机会,请问权杖能强化到的最大法术强度是多少? 输入 第一行包含两个正整数n,m,表示n颗法术石,m次强化机会。 第二行为n个用空格隔开的正整数v1, v2, … ,vn,vi表示编号为i的法术石具有的能量值。 数据范围:1≤m<n≤100000,1≤vi≤100000 输出 输出1个整数,表示权杖的最大的法术强度。 样例输入 6 31 7 2 2 5 9样例输出8 Hint样例说明:合并1、7得到 { 8 2 2 5 9 },合并2、2得到 { 8 4 5 9 },合并4、5得到 { 8 9 9 },法术强度等于8。 错误解法 自以为是暴力,只AC 27% n, m = list(map(int, input().split())) # 6 3 arr = list(map(int, input().split())) # [1,7,2,2,5,9] for _ in range(m): idx = arr.index(min(arr)) if idx == len(arr)-1 or idx > 0 and arr[idx+1] > arr[idx-1]: arr = arr[:idx-1] + [arr[idx-1] + arr[idx]] + arr[idx+1:] else: arr = arr[:idx] + [arr[idx] + arr[idx+1]] + arr[idx+2:] print(min(arr)) 分析错误1 - TLE错误2 - 考虑情况比如 3 2 1 4 code合并两次:3 3 4 → 6 4 → 取4 而正确方法为:5 1 4 → 5 5 → 5 正确解法 思路 from 群里某大佬 这个题变形一下: 假设我们知道最后的能量值是p的情况下 我们要判断这个序列能否在生成最小能量值为p,并且合并次数不大于m? 解决方法 1)从左往右扫,如果碰到能量值小于p的,向右合并即可,直到能量值大于或等于p 2)然后判断合并次数是不是不大于m 然后能量值p的取值范围肯定是在数组中,只需要把数组排个序,二分 伪代码 能量值的取值范围:1到所有数相加 1)直接二分1到所有数相加,取中间p2)判断helper(p)是否大于或等于m3)如果是,可以让能量值再大一些,p继续往大的二分;如果不是,往小的二分,直到得出p 时间复杂度是o(nlogk),k是最大和n*100000 代码 只保证测试用例和思路对,不知道能不能AC # 从左往右扫,如果碰到能量值小于p的,向右合并即可,直到能量值大于或等于p def helper(arr, target): cnt = 0 cur = 0 for num in arr: cur += num if cur < target: # 需要合并 cnt += 1 else: cur = 0 return cnt n, m = list(map(int, input().split())) # 6 3 arr = list(map(int, input().split())) # [1,7,2,2,5,9] left = min(arr) right = sum(arr) + 1 # 如果不加1, mid会取不到sum(arr) while left+1 < right: mid = (left + right) // 2 if helper(arr, mid) <= m: # 满足要求, 可以让能量值再大一些 left = mid else: right = mid print(left)
投递滴滴等公司10个岗位 >
0
点赞
评论
收藏
分享
2018-09-27 16:17
已编辑
湖北青年职业学院 Java
坚持~
有没有现在还是0Offer了嘛,加个好友,互相坚持,互相加油打气,共享招聘信息嘛
0
点赞
评论
收藏
分享
2018-09-07 14:12
湖北青年职业学院 Java
菜鸟的奖开完了吗?
菜鸟的奖开完了吗?
投递菜鸟集团等公司10个岗位 >
0
点赞
评论
收藏
分享
1
创作者周榜
更多
关注他的用户也关注了:
牛客网
牛客企业服务