腾讯前端暑期实习笔试

第一题没写出来还耗了四十分钟

第二题忘了用map只过了50%(猪脑过载)

第三题丑陋的dp,但是a了

const rl = require("readline").createInterface({ input: process.stdin });
var iter = rl[Symbol.asyncIterator]();
const readline = async () => (await iter.next()).value;

(async () => {
    // Write your code here
    let [n, m] = (await readline()).split(" ").map((v) => v * 1);

    // console.log(n, m);

    let path = Array(n)
        .fill()
        .map(() => Array(m).fill(0));
    let arr = [];
    for (let i = 0; i < n; i++) {
        arr.push((await readline()).split(""));
    }

    path[0][0] = 1;

    for (let i = 1; i < n; i++) {
        if (arr[i][0] === "#") break;
        let num = 0;
        for (let j = i; j > 0; j--) {
            num += path[i - j][0];
        }
        path[i][0] = num;
    }

    for (let i = 1; i < m; i++) {
        if (arr[0][i] === "#") break;
        let num = 0;
        for (let j = i; j > 0; j--) {
            num += path[0][i - j];
        }
        path[0][i] = num;
    }

    for (let i = 1; i < n; i++) {
        for (let j = 1; j < m; j++) {
            let row = i;
            let col = j;
            let sum = 0;
            while (row >= 0 && arr[row][col] !== "#") {
                sum += path[row][col];
                row--;
            }

            row = i;
            col = j;
            while (col >= 0 && arr[row][col] !== "#") {
                sum += path[row][col];
                col--;
            }

            path[i][j] = sum%10000007;
        }
    }

    // console.log(arr);
    // console.log(path);

    console.log(path[n - 1][m - 1]);
})();

第四题一样时间不够直接返回a-b过60%

第五题正则

const rl = require("readline").createInterface({ input: process.stdin });
var iter = rl[Symbol.asyncIterator]();
const readline = async () => (await iter.next()).value;

(async () => {
    // Write your code here
    let pattern = await readline();
    let ts = (await readline()) * 1;
    const date = new Date(ts);

    const year = date.getFullYear();
    const month = date.getMonth() + 1;
    const day = date.getDate();

    const tokens = {
        YYYY: year,
        YY: year.toString().slice(-2),
        M: month,
        MM: month.toString().padStart(2, "0"),
        D: day,
        DD: day.toString().padStart(2, "0"),
    };

    cache = pattern.match(/\[(.*?)\]/g);
    console.log(cache);

    pattern = pattern
        .replace(/\[(.*?)\]/g, "#")
        .replace(/YYYY/g, tokens.YYYY)
        .replace(/YY/g, tokens.YYYY)
        .replace(/MM/g, tokens.MM)
        .replace(/M/g, tokens.M)
        .replace(/DD/g, tokens.DD)
        .replace(/D/g, tokens.D)
        .replace(/#/g, () => cache.shift().slice(1,-1));

    console.log(pattern);
})();

太杠第一题了白丢0.9题,我是猪卵大伙都a了多少

#软件开发2023笔面经##前端##我的实习求职记录#
全部评论
a了2.4😭
点赞 回复
分享
发布于 2023-03-26 22:16 重庆
a了第一个,最后一个没时间了,白给
点赞 回复
分享
发布于 2023-03-26 22:17 辽宁
联想
校招火热招聘中
官网直投
先做最后一题 才过了22% 第一题没时间了
点赞 回复
分享
发布于 2023-03-26 22:22 浙江
第三题90,第五题没有处理括号66,算下来A了4.5
点赞 回复
分享
发布于 2023-03-26 22:58 湖南
第一题看了三分钟明显工作量大直接先跳过。A了234,最后一题过了88%来不及修小bug了,感觉码力有点慢了
点赞 回复
分享
发布于 2023-03-27 14:24 江苏
想问问楼主这些厂的笔试题都什么平台的,我看了些js的编程环境输入输出和leetcode差别挺大的,不知道怎么写
点赞 回复
分享
发布于 2023-03-27 20:54 四川

相关推荐

8 23 评论
分享
牛客网
牛客企业服务