首页 > 编程知识 正文

字节跳动面试发问卷,字节跳动面试问题

时间:2023-05-05 10:14:08 阅读:248327 作者:4408

目的

群里小伙伴拿到这么张图,让大家集思广益下,然后看看和那些大厂的差距。

具体内容 解析

代码是不能写的,打死我都不能写的,40分钟怎么写的出来,而且我也不会啊,干个活语法啥的都忘光了,就靠靠百度活着了。

题目1

没啥说的,给每个点定义下坐标(x1, y1),然后计算总长度得到 L,然后 L/k,得到平均值,然后和(x1,y1)计算下值的,一个个值应该就出来了。

PS

我就只会这么简单的硬上了,感觉是苦力活,至于其他大佬怎么方便处理的我就不知道了。另外,中间计算应该有很多坑,按我的眼神肯定是漏掉了,真是祝他们好运了。

题目2


单项列大概能理解,不能用其他数据结构这儿的定义不是很理解了,不过应该思路应该差不多吧?

计算下差值,应该就有结果了,
ps: 109 计算错了,是 99,但我原来画的图没保存,不想画了,所以,主要看思路啊思路~~

题目3

思路大概是填平了,然后减去已经存在的值,在图中就是 黑+蓝-黑 = value

处理一

先获取到最高处的值,然后对最高值左边进行处理,略过0-1中间的值,索引从0开始;从有黑框的开始,计数当前(1,1)和 最高值 h=1;然后,然后索引行走到(2,0),将0和最高值 h=1 比较,计数为(2,1);索引(3,2),替换 h=2;然后循环。大体思路就是这样,以左侧为基准确定最高点,一路填充,直到(7,3)结束;然后对右侧做相反处理,可以以右侧为基准处理,或直接数组倒序再处理一遍。
麻烦的是,最高点的确定,我只知道循环,这是浪费时间的一步。

处理二

没想到什么好的处理方式,能做的只是将循环获取最高点的浪费做次有效使用。在处理到(7,3)前动作基本不变,只是多了需要将 h=1,h=2,和他们结束高度时的坐标分别保存下来,如:(2,1),(6,2),(11,3),这样,我们就能知道,最高点是在数组索引6,然后对6-11的内容再按次 “处理一”处理,结束。

PS

PS:笨人就只有笨办法了,辛辛苦苦,兢兢业业

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。