腾讯2020校园招聘-后台
链接:牛客 腾讯2020校园招聘-后台
记录一下自己的想法以及一些大佬的分享的算法
压缩算法
var line = readline();var solution = (str) => {//递归,每次处理最内层const fn = (str) => {let x = -1, y = -1, z = -1, i = 0;//找到最内层[ | ]对应的下标while(i < str.length){if(str[i] === '[') x = i;else if(str[i] === '|') y = i;else if(str[i] === ']'){z = i;break;} i++;}//找到了则做解压处理if(x != -1 && y != -1 && z != -1){let num = Number(str.slice(x + 1, y));let t = str.slice(y + 1, z);str = str.slice(0, x) + t.repeat(num) + str.slice(z + 1);return fn(str);}return str;}return fn(str);
}console.log(solution(line));
逛街
其实我觉得这题的意思有点难懂,好在看完评论以后搞明白了:小Q站在当前楼的正中间,可以看到的楼就包括当前楼以及前后没有被挡住的楼(当前楼不管是否高于旁边的楼都不会挡住它)
var n = Number(readline());
var line = readline();
var lines = line.split(' ');
var h = new Array(n);
for(let i = 0; i < n; i++){h[i] = Number(lines[i]);
}var solution = (n, h) => {var left = [], right = [];var stack1 = [], stack2 = [];for(let i = 0, j = n - 1; i < n, j >= 0; i++, j--){left.push(stack1.length);right.push(stack2.length);//将被挡住的剔除while(stack1.length != 0 && stack1[stack1.length-1] <= h[i]) stack1.pop();while(stack2.length != 0 && stack2[stack2.length-1] <= h[j]) stack2.pop();stack1.push(h[i]);stack2.push(h[j]);}right = right.reverse();for(let i = 0; i < n; i++){left[i] += right[i] + 1;}return left.join(' ');
}console.log(solution(n, h));
腾讯2020校园招聘-后台相关推荐
- 腾讯2020校园招聘后台开发面试编程题
腾讯一面的时候,面试官给出了一道题,题目如下,当初由于是第一次面试,比较紧张没做出来,现在回顾总结一下. 题目 小Q在周末的时候和他的小伙伴来到大城市逛街,一条步行街上有很多高楼,共有n座高楼排成一行 ...
- 压缩算法 【腾讯2020校园招聘-后台综合-第一次笔试 】
题目:小Q想要给他的朋友发送一个神秘字符串,但是他发现字符串的过于长了,于是小Q发明了一种压缩算法对字符串中重复的部分进行了压缩,对于字符串中连续的m个相同字符串S将会压缩为[m|S](m为一个整数且 ...
- 腾讯2020校园招聘-后台 编程题
小Q想要给他的朋友发送一个神秘字符串,但是他发现字符串的过于长了,于是小Q发明了一种压缩算法对字符串中重复的部分进行了压缩,对于字符串中连续的m个相同字符串S将会压缩为[m|S](m为一个整数且1&l ...
- 腾讯2021校园招聘-后台综合-第二次笔试 Apare_xzc
腾讯2021校园招聘-后台&综合-第二次笔试 Apare_xzc 2020.9.6 20:00-22:00 5道编程题,500分 第一题:链表的公共部分 题意: 给定两个长度分别为n,m的链表 ...
- 腾讯2020校园招聘----逛街
腾讯2020校园招聘----逛街 文章目录 腾讯2020校园招聘----逛街 一.问题描述 二.问题分析 一.问题描述 小Q在周末的时候和他的小伙伴来到大城市逛街,一条步行街上有很多高楼,共有n座高楼 ...
- 腾讯2020校园招聘----覆盖
腾讯2020校园招聘----覆盖 文章目录 腾讯2020校园招聘----覆盖 一.题目描述 二.问题分析 三.代码 一.题目描述 小Q在进行一场竞技游戏,这场游戏的胜负关键就在于能够能争夺一条长度为L ...
- 腾讯2020校园招聘----逆序对
腾讯2020校园招聘----逆序对 文章目录 腾讯2020校园招聘----逆序对 一.题目描述 二.题目分析 方法一:暴力求解(超时) 方法二:优化 一.题目描述 二.题目分析 首先,我们看到要求逆序 ...
- 腾讯2020校园招聘---假期
腾讯2020校园招聘-假期 文章目录 腾讯2020校园招聘---假期 一.题目描述 二.题目分析 三.代码 一.题目描述 由于业绩优秀,公司给小Q放了 n 天的假,身为工作狂的小Q打算在在假期中工作. ...
- 腾讯2020校园招聘正式批市场研究 | 群面(2019.10.17)
岗位:市场研究 批次:正式批 啊 是我梦想的腾讯爸爸啊,鉴于我太菜了,只能帮大家到群面了--. ? 「更多我的秋招经验贴」 <2020我的秋招总结帖 [数据分析岗] | 目录索引> 一.面 ...
- 腾讯2020校园招聘-产品
题目描述 当前有一个热门的理财场景叫"梦想计划",即让用户设定一个目标值,然后通过定投.或者不定期存入资金等方式达到目标.请设计一个针对梦想计划理财的线上推广方案. 解答 (1) ...
最新文章
- Swarm 如何存储数据?- 每天5分钟玩转 Docker 容器技术(103)
- 【C++】20. const char *str[]、指针的字节长度等 分析
- Python中常用的文本转义及编码
- android 安全讲座第三层 linux权限基础知识
- Dropout的前世与今生
- break与continue的区别【图解】(简洁明了)
- js中字符串和数组的使用
- 汇编语言:编写代码实现字符串的复制
- HTTP Status 500 - javax.servlet.ServletException: File [/head.jsp] not found
- poj 1502 MAPMaelstrom 单源最短路dijkstra
- Caffe 学习系列
- Angular、React 当前,Vue.js 优劣几何?
- android uri内部协议,Android 解析 Intent 协议并打开程序 – 热爱改变生活
- Linux USB驱动框架分析
- iconv linux 开源代码,每天一个 Linux 命令(123):iconv 命令
- ajax js java省市三级联动菜单,javaweb--json--ajax--mysql实现省市区三级联动(附三级联动数据库)(示例代码)...
- 红米K40 Pro/Pro+ 使用Fastboot安装欧版ROM (非TWRP)
- STM32编译生成的BIN文件详解
- win7升级RDP至8.1
- java 熄灯问题_遍历搜索空间的例子:熄灯问题