小红书前端3.26笔试第三题

算法难度好像比别的笔试小一些,正常无优化都能a82%,利用=号优化一下100%,赛码好像跟牛客挺像的,但是用户体验好像两个极端

package main

import "fmt"

func scan(n int, dist []int) {
	for i := 0; i < n; i++ {
		fmt.Scan(&dist[i])
	}
}
func main() {
	N := 0
	fmt.Scan(&N)
	arr := make([]int, N)
	scan(N, arr)
	M := 0
	fmt.Scan(&M)
	Ls := make([]int, M)
	Rs := make([]int, M)
	Os := ""
	Xs := make([]int, M)
	scan(M, Ls)
	scan(M, Rs)
	fmt.Scan(&Os)
	scan(M, Xs)
	var compute func(int, int) int
	compute = func(i int, p int) int {
    if i==-1{
      return arr[p]
    }
		l, r, o, x := Ls[i], Rs[i], Os[i], Xs[i]
    if p<r&&p>=l-1{
      if o == '|' {
        return compute(i-1,p) | x
      } else if o == '&' {
        return compute(i-1,p) & x
      }else{
        return x
      }
    }else{
      return compute(i-1,p)
    }
	}
  for p:=0;p<N;p++{
    arr[p]=compute(M-1,p)
  }
	for i := 0; i < N; i++ {
		fmt.Print(arr[i], " ")
	}
}

全部评论
这是什么语言
1 回复 分享
发布于 2023-03-26 18:25 湖北
这。。。我直接fmt.Println算我错,还以为逻辑处理错了,原来是要这样写。。。
1 回复 分享
发布于 2023-03-26 18:11 四川
招联金融2024届实习生招聘正式启动 大佬可以主页看下
点赞 回复 分享
发布于 2023-04-05 14:29 广东
我想问一下面试题必须用js写还是其他语言也可以
点赞 回复 分享
发布于 2023-03-27 22:30 美国
请问我这样写有啥错误呀,看一小时了没看出来,测试样例能过,可是提交不通过 谢谢! func main() { n := 0 fmt.Scanln(&n) arr := []int{} //数组长度n for i := 0; i < n; i++ { t := 0 fmt.Scan(&t) arr = append(arr, t) } m := 0 fmt.Scanln(&m) //操作次数 left := []int{} for i := 0; i < m; i++ { t := 0 fmt.Scan(&t) left = append(left, t) } right := []int{} for i := 0; i < m; i++ { t := 0 fmt.Scan(&t) right = append(right, t) } ope := "" fmt.Scanln(&ope) xarr := []int{} for i := 0; i < m; i++ { t := 0 fmt.Scan(&t) xarr = append(xarr, t) } for i := 0; i < m; i++ { l, r := left[i], right[i] o := ope[i] x := xarr[i] for j := l - 1; j < r; j++ { if o == '=' { arr[j] = x } else if o == '|' { arr[j] = x | arr[j] } else { arr[j] = x & arr[j] } } } for i := 0; i < len(arr)-1; i++ { fmt.Printf("%d ", arr[i]) } fmt.Print(arr[len(arr)-1]) }
点赞 回复 分享
发布于 2023-03-26 19:28 天津
请问为什么把修改过程独立写到compute()里面可以起到优化作用?
点赞 回复 分享
发布于 2023-03-26 18:40 上海
什么岗昂!
点赞 回复 分享
发布于 2023-03-26 18:30 美国

相关推荐

点赞 评论 收藏
分享
09-06 21:21
已编辑
小红书_前端开发(实习员工)
距离8.4正式开始秋招投递一个月了,体感上已经面了葛立恒数场了,然而至今还是0意向,真羡慕暑期成功转正的佬们(我的部门连转正HC都没有,只能早早地离职开始准备秋招)。9月的第一周也就是本周面了8场,笔试1场,身体已经开始有点撑不住了,许愿本蒟蒻的第一个意向能快快来吧走完流程或在等HR面的:-&nbsp;帆软:8.11投递-8.20约一面-8.21一面-8.26约二面-8.27二面-8.29约三面-9.1三面-9.3晚进offer池滴滴:8.19投递-8.22发笔试-8.26笔试-9.2约一面-9.4三轮面-15:00一面-16:40二面-17:20三面(滴滴你真是疯了,第一次体验这种高强度面试嗓子都说哑了)小红书:8.20投递-8.22过初筛-8.24笔试-8.25约一面-8.27一面-8.28约二面-9.2二面-9.2约hr面-9.3hr面-9.4约终面-9.5终面红薯的面试官对我都非常亲切,除了书还有谁这么宠我……爱书信书等书,明天准备飞去上海故地重游参加&nbsp;red&nbsp;path&nbsp;线下沙龙了还在面试流程中的:字节:8.5约一面&nbsp;-&nbsp;8.25一面-8.26约二面-9.3二面字节的面试官好像都很忙的样子,时间好难约美团:8.29AI面-8.30笔试-9.2约一面-9.2挂了9.5又被捞-9.9一面一面就挂了真的是绷不住了,团你咋这样淘天:8.11约一面-8.12一面-8.14测评-8.16笔试-8.15约二面-8.21二面被狠狠打碎了-8.21光速挂8.29换部门重新投-9.2约一面-9.9一面真给我面出心理阴影了&nbsp;不愧是你挂了的:柠檬微趣提前批:8.7投递过筛-8.8笔试-8.14说我挂了??真有你的蚂蚁:8.23投递-8.25测评-8.26约一面-8.29一面-8.31感谢信其实我觉得面的还不错,面试官反馈也不错,大概是被KPI了,浪费我一个半小时笔试完还在泡简历池的:PDD京东B站腾讯(鹅你怎么不理我啊,鹅你再看我一眼好吗)OPPO其他还有一些厂,之前海投后发了笔试但实在没精力做了QWQ秋招开始的时候每次面试前都还紧张的要死,现在已经逐渐麻了。进入9月后也感觉到面试的密度显著增加了,一天没面试算休息了。还有一个感受就是一个月下来身体变差了许多,特别是肠胃变得非常敏感,曾经无辣不欢重油重盐的我现在能接受的饮食越来越清淡了。各位同届的朋友们在紧张的求职之余一定要注意身体,保持锻炼啊XD
我的秋招日记
点赞 评论 收藏
分享
评论
1
8
分享

创作者周榜

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