网易雷火2022秋招笔试8.14

第一题:从0号宝箱开始,每开一个宝箱有几个钥匙(对应编号的钥匙能开对应的宝箱),问能不能开掉所有的宝箱。

package main

import (
    "encoding/json"
    "fmt"
)

func main() {
    var s string
    fmt.Scan(&s)
    arr := make([][]int, 0)
    err := json.Unmarshal([]byte(s), &arr)
    if err != nil {
        fmt.Println("false")
        return
    }
    keys := make([]int, 0)
    opened := make(map[int]bool, 0)
    for i := 0; i < len(arr[0]); i++ {
        keys = append(keys, arr[0][i])
    }
    opened[0] = true
    for len(keys) > 0 {
        first := keys[0]
        keys = keys[1:]
        opened[first] = true
        for i := 0; i < len(arr[first]); i++ {
            if !opened[arr[first][i]] {
                keys = append(keys, arr[first][i])
            }
        }
    }
    if len(opened) == len(arr) {
        fmt.Println("true")
        return
    }
    fmt.Println("false")
}

第二题:问一亿以内包含25的数字的个数(这题我取巧了,正解应该是每个区间找规律)

package main

import (
    "fmt"
    "strconv"
    "strings"
)

func main() {
    n := 0
    fmt.Scan(&n)
    ans := 0
    if n >= 99999925 {
        fmt.Println(6850999)
        return
    }
    for i := 0; i <= n; i++ {
        s := strconv.Itoa(i)
        if strings.Contains(s, "25") {
            ans++
        }
    }
    fmt.Println(ans)
}

第三题:没看题目,有点恶心,我直接返回3,过了33%

#网易雷火笔试##网易##笔试#
全部评论
最后那个不好弄啊,要考虑边界
点赞 回复 分享
发布于 2022-08-15 20:14
请问楼主收到面试通知了吗
点赞 回复 分享
发布于 2022-08-22 11:19 贵州

相关推荐

2024-11-11 15:12
南昌大学 材料工程师
一个菜鸡罢了:哥们,感觉你的简历还是有点问题的,我提几点建议,看看能不能提供一点帮助 1. ”新余学院“别加粗,课程不清楚是否有必要写,感觉版面不如拿来写一下做过的事情,教育经历是你的弱势就尽量少写 2. “干部及社团经历”和“自我评价”删掉 3. 论文后面的“录用”和“小修”啥的都删掉,默认全录用,问了再说,反正小修毕业前肯定能发出来 4. 工作经验和研究成果没有体现你的个人贡献,着重包装一下个人贡献
点赞 评论 收藏
分享
object3:开始给部分🌸孝子上人生第一课了
点赞 评论 收藏
分享
评论
2
2
分享
牛客网
牛客企业服务