360笔试E卷0827前端

40道选择题,2道编程题(老师捞我和组队吃鸡)
整体来说,比较简单,正好适合我这样的选手

两道编程题都ac了,下面简单写一下
编程题代码是回忆的,不是当时写的,不一定对, 但是思路应该没错

1. 老师捞我
      题目:已知期末成绩  f , 平时分占比 p , 期末成绩占比q。 总成绩等于  :(平时分占比 * 平时分)+ ( 期末成绩占比 * 期末成绩 
       及格标准是总成绩大于等于60。现在给每个同学打平时分,要求在期末成绩越高,平时分越高的前提下使及格的人数最多
       思路:期末成绩从大到小排序,给第一个也就是成绩最高的平时分打100分,遍历期末成绩,遇到后成绩不等于前一个成绩的,平时分就减一

const [n,p,q] = read_line().split(" ").map((item)=>parseInt(item))
const score = read_line().split(" ").map((item)=>parseInt(item))

score.sort((a,b)=>b-a)
let normal = 100
let ans = 0
for(let i=0;i<n;i++){
    if(i>0 && score[i]!=socre[i-1]){
        normal--
    }
    let last = normal*p/100 + score[i]*q/100
    if(last>=60){
        ans++
    }
}
console.log(ans)


2. 组队吃鸡
    题目:A表示 1 个人队伍,B表示 2 个人队伍, C表示 3 个人, D表示4个人的队伍。可以任意将一个队伍加入到另一个队伍,产生一个新队伍,
            但是人数不能大于4, 也不拆队,必须整体加入。 求4个人的队伍最多有多少个
    思路: D的队伍不需要动,结果直接加入D的个数; C的队伍只能和A结合,结果加他们的较小者就好了; A减去和C结合的个数后,A,B之间可以任意组合,结果加入 Math.floor(A+2*B)/4
const n = parseInt(read_line())

for(let i=0;i<n;i++){
    let arr = read_line().split(" ").map((item)=>parseInt(item))
    let res = arr[3]
    let r1r3 = Math.min(arr[0],arr[2])
    res += r1r3
    arr[0] -= r1r3
    res += Math.floor((arr[0]+arr[1]*2)/4)
    console.log(res)
}



    


#360笔试#
全部评论
我也e卷,题还不一样
点赞 回复 分享
发布于 2022-08-27 20:26 广东
吃鸡那个题目没看懂,方便解释一下吗
点赞 回复 分享
发布于 2022-08-30 09:29 广东

相关推荐

头像
10-10 11:06
已编辑
门头沟学院 前端工程师
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;今天分享一下美团和蔚来面试中遇到的一些问题。1.(蔚来二面)在forEach和map里面对遍历的值进行改变会影响原数组吗&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;认真背八股的同学肯定都记得,forEach不会返回新的数组,只是遍历每一项并做计算,map会返回新的数组,所以理所当然的想map不会改变原数组,forEach...会怎么样??想到这里就错了,这也是我当时的思路。&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;事实上这个问题跟上面那个八股完全没关系。试想一个函数,传递了参数进来并改变这个参数,会不会对原来数据进行改变呢?这个题是在靠这个,需要分类回答。&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;数组中数据为基本数据类型时,forEach和map都不会改变原数组;数据为引用数据类型时,map和forEach都会改变原数组。在使用&nbsp;forEach&nbsp;和&nbsp;map&nbsp;方法时,对引用类型元素的修改会直接反映在原始数组中。这是因为引用类型的元素实际上存储的是引用(内存地址),而非值本身。因此,通过引用可以访问和修改原始数组中的元素。而number,string,Boolean,null,undefined这些基本类型在栈内存中直接存储变量与值。2.(美团到家一面)为啥会出现箭头函数&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;这一个问题可以去b站渡一老师的小视频里看看。&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;肯定很多人跟我一样第一时间想到的是箭头函数和普通函数的区别,那为啥有这些区别,为啥要单独搞个箭头函数出来?难道只是为了简单吗。其实原因只有一个:消除函数的二义性。 在出现箭头函数之前,函数可以直接被调用,也可以被new当作构造函数使用,这就是函数的二义性。而这种二义性的存在是会给开发带来负担的,因为创建者并不知道未来函数的调用者是如何使用这个函数的,所以后来先在命名上做了规范:小写开头的函数是直接使用的,大写开头的是构造函数。但这种规范也不是强约束,毕竟既可以Number(),又可以new Number(),所以为了消除这种二义性,创造了箭头函数和class,箭头函数只能() =>&nbsp;{},当作普通函数调用,而class只能被new,这就刚好对应二义性的两种用法,解决这种复杂情况了。————————10.10补充————————&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;感谢牛u的提示,这边还有一个点补充。&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;箭头函数的出现解决了this的复杂指向问题。&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;举例如图3所示,当调用show方法打印this.x的时候打印的是undefined。这是因为当代码执行到了setTimexout(&nbsp;)的时候,此时的this已经变成了window对象(setTimeout(&nbsp;)是window对象的方法),因此会在window上查找x,找不到,就输出undefined。&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;而如果是箭头函数,箭头函数的this是定义时就确定的,因此箭头函数的this指向的是obj,输出的就是obj.x。这样就解决了普通函数在当作回调函数传递的时候this变化带来的麻烦,否则就要用全局变量或者闭包之类的方法。3.(美团到家一面)obj对象中有一个方法,用obj.a()和(obj.a)()去调用分别输出什么(a方法中输出this.name,obj和全局都有一个name属性)?&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;这个题其实是当时考的一个输出题(图1)。下来尝试了一下,答案是没区别,都输出obj对象中的name。&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;这个题我一开始以为(obj.a)()这种调用就跟let&nbsp;b&nbsp;=&nbsp;obj.a,然后调用b()这种形式一样,但不是这样的,这个点可以记一下。&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;然后还要注意的一个点是,如果这个方法是箭头函数的形式(图2),那么this指向就不一样了,指向的是window。所以会在window上面去找name。那么这个时候输出什么?&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;是不是很多人脱口而出,“输出hong!”&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;恭喜各位掉到新坑了,这个时候输出是空(什么都没有:“”)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;因为let和const定义的变量是不会挂到window对象身上的,如果改成var就能输出hong了,大家可以自行尝试一下、&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(上面这个点个人认为还是很细的,一定要小心)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;这几个是自己踩过的坑,第三点应该很多同学都会想错。&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;欢迎各位评论区交流~#24届软开秋招面试经验大赏##软件开发2024笔面经##美团##蔚来##前端#
菠萝包lime:佬说的太棒了,箭头函数这块我也看的渡一的视频,当时被问到还是挺爽的,直接从二义性回答。
点赞 评论 收藏
分享
2 25 评论
分享
牛客网
牛客企业服务