有笔试哔哩哔哩算法的吗?

有笔试哔哩哔哩算法的吗?
第二题:
那个⑨是什么东西?为什么粘贴复制就完全错误了?只ac了17%。。。不知道还有没有其他问题
思路是迭代求dp(num, target,  2)
num = int(raw_input())

arr = [0] + map(int, raw_input().split())

target = int(raw_input())

def dp(num, target, count):
    if count == 2:
        if sum(arr[:num+1]) < target:
            return []
        if num <= 0:
            return []
        if target < 0:
            return []
        dp_list = dp(num-1, target-arr[num], 1)
        [item.append(num) for item in dp_list]
        return dp_list + dp(num-1, target, 2)
    elif count == 1:
        output = []
        for index in range(1, num+1):
            if arr[index] == target:
                output.append([index])
        return output

out = dp(num, target, 2)
out_list = []
for item in out:
    out_list.append(sorted(item))
out_norm = sorted(out_list, key=lambda x:arr[x[0]])
if len(out)>0:
    for item in out_norm:
        print item[0], item[1]
else:
    print('⑨\n') 
第一题:
这算是图的遍历吗?
n = int(raw_input())
ai = int(raw_input())
m = int(raw_input())

dict_i = {}

for i in range(n):
    dict_i[i] = []

for _ in range(m):
    x, y = map(int, raw_input().split(','))
    dict_i[x].append(y)
    dict_i[y].append(x)
dict_i[ai].append(ai)
old_num = len(dict_i[ai])

view_flag = [False for _ in range(n)]

view_flag[ai] = True

def find(bi):
    for index in dict_i[bi]:
        if view_flag[index] == False:
            view_flag[index] = True
            if index not in dict_i[ai]:
                dict_i[ai].append(index)
            find(index)
            
for index in dict_i[ai]:
    if view_flag[index] == False:
        view_flag[index] = True
        if index not in dict_i[ai]:
            dict_i[ai].append(index)
        find(index)

print(len(dict_i[ai])-old_num)
第三题:
arr = ''
while arr != 'END':
    arr = raw_input()
    print(eval(arr))

#哔哩哔哩#
全部评论
点赞 回复 分享
发布于 2018-09-22 22:09
第一题谁有AC代码,可以发我一份吗,自己的代码死活都是67,谢谢了
点赞 回复 分享
发布于 2018-09-22 18:32
问答题是什么鬼,不会啊,空间转换,保持稳定,不飘
点赞 回复 分享
发布于 2018-09-21 21:26
第一题67%...想不通
点赞 回复 分享
发布于 2018-09-21 17:57
问答题我一脸懵逼
点赞 回复 分享
发布于 2018-09-21 17:26
同83,我百度了个9粘进去也不行。
点赞 回复 分享
发布于 2018-09-21 17:20
ac2.83 第二题过不了
点赞 回复 分享
发布于 2018-09-21 17:11
B站可以的,3:00笔试,3:30给我发链接
点赞 回复 分享
发布于 2018-09-21 17:11
第二题那个⑨是真的太秀了
点赞 回复 分享
发布于 2018-09-21 17:10
第二题排个序俩头便利就好。那个圆圈9要用unicode输出
点赞 回复 分享
发布于 2018-09-21 17:07
第二题我测了下只输出⑨好像没有为0的case...最后83%,不知道问题在哪
点赞 回复 分享
发布于 2018-09-21 17:07
B站的第二题太秀了,威严,天才妖精,输出⑨,看到这题直接笑出声。
点赞 回复 分享
发布于 2018-09-21 17:06

相关推荐

常规问题:&nbsp;1.&nbsp;3分钟简单自我介绍2.&nbsp;在实习和开源经历中,你遇到的最大困难或最具挑战性的事情是什么?实习拷打(拓展相应的场景八股)慢&nbsp;sql&nbsp;治理相关的1.&nbsp;你在平台稳定性建设中提到通过添加索引、读写分离优化慢SQL,具体是怎么做的?2.&nbsp;读写分离可以再详细说一下吗3.&nbsp;能否举一个添加索引的具体例子?比如在哪个字段上加了什么类型的索引?4.&nbsp;你加的是单列索引,如果查询只需要表中的几个字段,当前的单列索引是否有优化空间?5.&nbsp;联合索引相比单列索引的优势是什么?为什么更优?(从回表,索引下推优化那个方向说就好)es&nbsp;慢查治理相关1.&nbsp;关于ES扩容主分片优化查询,具体是怎么做的?2.&nbsp;系统的ES集群资源配置你了解吗?(如CPU、节点数等)3.&nbsp;扩容分片数量是如何确定的?仅依据数据量吗?4.&nbsp;分片切割后为什么查询会变快(并行查询)5.&nbsp;将&nbsp;long&nbsp;类型字段转为keyword类型,是如何利用跳表结构的?这里其实并不能,只是切换是为了适应精准匹配的场景,keyword&nbsp;的底层用的是倒排索引+跳表6.&nbsp;除了分片扩容和类型转换,还有哪些方式可以优化ES慢查询?(force&nbsp;merge&nbsp;整理碎片)分布式锁(业务中有个并发修改用到了,主要问的一些分布式锁的实现细节)1.&nbsp;你在业务中使用的分布式锁是标准库还是自研的?2.&nbsp;让你自己实现一个最简单的分布式锁,你会怎么实现?3.&nbsp;如果任务加锁后异常退出,没有释放锁,如何避免死锁?4.&nbsp;如果任务执行时间很长,锁过期被其他任务获取,原任务完成后误删了别人的锁,如何解决(防止锁的误释放,加标识)5.&nbsp;如果任务A包含多个子任务,且子任务本身也有加锁逻辑,在嵌套调用时会因重复加锁失败,如何解决?(可重入锁的实现)6.&nbsp;在秒杀场景下,能否直接用分布式锁控制库存扣减?会有什么问题?7.&nbsp;如何让秒杀请求不立即失败?(锁的自旋)并发编程1.&nbsp;你使用CompletableFuture并发查询多个维度,底层是如何实现并发的?2.&nbsp;你是自己定义线程池,还是使用默认线程池?3.&nbsp;你是基于什么依据设置线程池参数的?4.&nbsp;如果一个任务同时包含CPU密集型和I/O密集型操作,共用一个线程池会有什么问题?应该如何设计?(线程池隔离,避免cpu密集型任务阻塞I/O密集型任务)Agent和开源相关的内容1.&nbsp;你的基座模型切换(DeepSeek&nbsp;→&nbsp;千问)后,响应是流式还是非流式?2.&nbsp;为什么关注完整响应时间,而不是首字响应时间?(主要是业务上的一个需要)3.&nbsp;你的性能优化目标是在保证输出内容不变的前提下缩短生成时间吗?4.&nbsp;你在Agent框架中使用了责任链模式和观察者模式,请分别解释这两种模式5.&nbsp;既然有四个固定执行步骤(Agent执行前,执行后,模型执行前,执行后),是否可以用模板方法模式替代责任链模式?6.&nbsp;你使用观察者模式的具体场景是什么?为什么选择它?7.&nbsp;你还了解哪些常用设计模式?8.&nbsp;你提到使用HNSW算法进行向量搜索,能简述其基本原理吗?(避免全表的向量查询)9.&nbsp;为什么不直接用余弦相似度做全量匹配,而要引入HNSW?10.&nbsp;你是否使用过BM25算法?它的作用是什么?11.&nbsp;向量搜索有哪些弊端?12.&nbsp;向量检索和BM25全文检索的得分量纲不同,如何进行混合排序?(引入一个精排模型重新打分)反问:1.&nbsp;业务(智能客服相关)2.&nbsp;不足,基础还需要加强无手撕,总体一个小时总结:面试体验很好,主要就是根据简历延伸一些八股和简单场景,有些还需要加强的地方,挖出来了自己基础上的一些问题
点赞 评论 收藏
分享
11-16 02:15
门头沟学院 Java
1、实习介绍,看机会原因,项目。2、redis常用的数据结构,项目中用过哪几种,业务中使用的场景3、redis的hash怎么实现的,rehash过程讲一下&nbsp;和JavaHashMap的rehash有什么区别?redis&nbsp;cluster怎么做到高可用的?4、redis集群和哨兵机制有什么区别?redis的持久化机制了解吗?遇到过redis的hotkey吗?怎么处理的?5、redis是单线程的吗?单线程为什么还这么快?讲一讲redis的内存模型?6、简单说一下RabbitMQ的工作原理?如何保证消息的顺序执行?7、卡夫卡了解吗?和RabbitMQ有什么区别?8、tcp/udp简单说下两者的区别?tcp为什么要三次握手和四次挥手?两次握手可以不?会有什么问题?tcp怎么保证有序传输的9、讲下tcp的快速重传和拥塞机制,知不知道time_wait状态,这个状态出现在什么地方,有什么用?10、http与https区别?https是怎么做到安全的?11、有没有了解过协程?说下协程和线程的区别?用过哪些linux命令?如查看内存使用、网络情况?12、你了解哪些设计模式啊。挑一个熟悉的讲讲?(除了单例模式)在项目中有用过设计模式吗?讲讲你怎么用的?简单说一下适配器模式和装饰器模式?13、索引的常见实现方式有哪些,有哪些区别?14、MySQL的存储引擎有哪些,有哪些区别?InnoDB使用的是什么方式实现索引,怎么实现的?说下聚簇索引和非聚簇索引的区别?15、raft算法的基本流程?raft算法里面如果出现脑裂怎么处理?16、paxos和zookeeper的zab算法,他们之前有啥区别?17、如果我是想一个人的姓名一样就认为他们equal,能现场写下我们怎么重写equals吗?如果两个对象,一个是cat,一个是dog,我们认为他们的name属性一样就一样,怎么重写equals18、还有点时间,写个题吧leetcode406.根据身高重建队列假设有打乱顺序的一群人站成一个队列。每个人由一个整数对(h,&nbsp;k)表示,其中h是这个人的身高,k是排在这个人前面且身高大于或等于h的人数。&nbsp;编写一个算法来重建这个队列。注意:总人数少于1100人。示例输入:[[7,0],&nbsp;[4,4],&nbsp;[7,1],&nbsp;[5,0],&nbsp;[6,1],&nbsp;[5,2]]输出:[[5,0],&nbsp;[7,0],&nbsp;[5,2],&nbsp;[6,1],&nbsp;[4,4],&nbsp;[7,1]]
查看18道真题和解析
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务