2019腾讯暑期实习常规批笔试技术研究与数据分析卷编程题

笔试 | 腾讯2021秋招笔试 技术研究&数据分析 文章首发于公众号面鲸,欢迎关注~ 第一题 题目描述 现在给你一个只包含""括号的字符串,问你至少加多少个字符是合法的,对于字符串合法的定义为: 字符串为空是合法的 若字符串A合法,则字符串(A), [A]也是合法的 若字符串A和字符串B均合法,则AB合法 输入 第一行输入一个字符串s,保证只有题目要求的字符 1 <= len(s) <= 200 输出 输出最少需要添加几个字符可以构成合法的字符串 样例输入 样例输出 1 样例输入 )(][][)( 样例输出 3 . 阅读详情

题一 数字拆分

一个数字有两种操作,1 对所有数字减一 2 把所有数字都拆分成两个更小的数之和,问最多拆分K次,把N完全消去最少需要多少轮操作。

输入取值范围: 1<= N <=100, 0<=K<=100

样例: 输入 5 2 ,输出 4。 输入15 4,输出 6

注:这里其实第二个用例错了, 因为5次就能完全消去。

解题思路

注意点

  1. 拆分操作是所有数字拆分,减一也是所有数都减。
  2. 把N完全消去最少需要多少轮操作。(废话)

解析

  1. 因为是所有数字同时拆分且所有数字同时减1,所以达到完全消去只需要保留过程中最大的数字即可,不需要完全模拟。
  2. 因为反正都是要消去,但是要找最少操作次数我们要比较这次消去前要不要拆分比较好。

python实现

# -*- coding: utf-8 -*-
"""
Created on Sun Apr  7 20:28:10 2019
@author: Ang
"""
def f(a, k):
    if k==0:
        return a
    a1 = a
    if a%2==0:
        a = a/2
    else:
        a = a//2+1
    a2 = f(a,k-1)+1  
    return a1 if a1<a2 else a2

x = list(map(int,input().split(' ')))
a = x[0]
k = x[1]

print(int(f(a,k)))

代码解释

f(a,k) 表示数字a在k次拆分机会的条件下最少需要几次能被完全消去。
若不拆分直接消去 ,则为方案一的答案a1,为a次操作。
若拆分再接着消去 ,则为方案二的答案a2,我们先把a拆分,且为了消去操作次数最小肯定是对半拆分,保留最大的数字b即可,计算方案二的拆分次数f(b,k-1)+1。
两种方案选择最小的操作次数返回。

题二 水果运费

一条笔直的公路上有n个村庄,每个村庄有A[i]个水果,A[i] >0 代表 村庄需要购进水果, A[i] < 0 代表村庄需要卖出水果。 所有村庄供需平衡,即所有A[i]求和为0,把k个水果搬到相邻村庄需要k块钱的运费,

最少需要多少花费可以满足所有村庄对水果的需求。

输入取值范围: 2 <= n <= 300000, -1000 <= A[i] <= 1000

样例:
输入

5
5 -4 1 -3 1 

输出

9

解题思路

注意点

  1. 一条笔直的公路有n个村庄。
  2. 把k个水果搬到相邻村庄需要k块钱的运费
  3. 所有村庄供需平衡。

解析

  1. 表示所有村庄在同一维度上,没有复杂的两两关系,降低问题难度。
  2. 从贪心的角度上,若从左往右考虑,最左的需求村庄从最左的供应村庄进货肯定会是全局最优解,因为最左的供应村庄往更右的需求村庄运水果会有更高的运费。
  3. 比如从左向右考虑,前i个村庄的供需若不平衡,肯定会继续向右运水果或进水果而产生更多费用,若平衡则不产生更多费用。所以我们只需要从左往右或从右往左把运费理一遍即可。

python实现

# -*- coding: utf-8 -*-
"""
Created on Sun Apr  7 20:51:03 2019
@author: Ang
"""
N = eval(input())
x = list(map(int,input().split(' ')))
ans = x[0]
for i in range(1,N):
    x[i] += x[i-1]
    ans += abs(x[i])
print(ans)

代码解释

x[i] 表示要平衡前i个村庄的供需,还要供/需多少水果(其绝对值就是运费)。
就从头到尾从左到右把运费理一遍即可。

注:这是我下来后才整理出来更简单的方法,当时我的做法是给了两个index(i,j),i表示最左的还需要水果的村庄,j表示最左的还可以提供水果的村庄,从左往右满足需求的理了一遍运费,也是AC。
下来整理的这个方法当时有点灵感但是写出来一个错误的,当时为了找出错误在哪浪费了大量时间导致很简单的第三题没有时间完成。太傻了

题三 找最小数

一天,小Q得到了一个包含n个数字的数组,他想对这个数组进行K次如下的操作。首先找出数组中最小的非0数字X,输出它,然后把数组中的所有非零数字都减去X;如果数组中的数字都是0,那么直接输出0。
输入描述
第一行两个数字n和k,用一个空格分隔
第二行n个数字,每两个数字之间用一个空格分隔
满足1<=n,k<=105 数组中所有的数字ai满足1<=ai<=109

样例:
输入

4 1
5 5 7 2

输出

2

输入

2 2
4 6

输出

4
2

解题思路

注意点

  1. 找出数组中最小的非0数字X。
  2. 把数组中的所有非零数字都减去X。
  3. 这个数组进行K次如下的操作。

解析

  1. 只找最小的非零数字。
  2. 为0的数字永远为0了。大小顺序不变。
  3. 只进行k次。意味着我们排序后,只需要对前面的部分数字进行处理,不需要全部处理。

python实现

# -*- coding: utf-8 -*-
"""
Created on Sun Apr  7 21:16:43 2019
@author: Ang
"""
x = list(map(int,input().split(' ')))
n = x[0]
k = x[1]
A = list(map(int,input().split(' ')))

def f():
    global A
    global k
    A.sort()
    i = 0
    s = 0
    while k:
        while A[i]==s:
            i+=1
            if i>=n:
                return
        print(A[i]-s)
        s+=(A[i]-s)
        k-=1
        
f()
for i in range(k):
    print(0)

代码解释

首先我们把list A进行从小到大排序。
i 表示当前考虑的数字。s表示当前已减去的数字和。
只需要考虑当前A[i]是不是等于s即可,若等于,表示A[i]已被减到0;否则输出A[i]-s即可。不用实际的把所有数都减一遍。
若i超过了n(数字总个数),表示已经没有更小的非0数字了,需要补剩余轮次的0。

腾讯2021校园招聘-技术研究类和数据分析-第一次笔试20200823 过题情况 第一题:100% 第二题:100% 第三题:100% 第四题:100% 第五题:100% 第一题 经典区间dp问题,dp[i][j]代表着从字符串i位置到j位置需要的最小括号匹配数,如果第i个位置和第j个位置的两个括号是匹配的,那么dp[i][j] = dp[i+1][j-1],相当于两边分别往里缩了一个;当i<j时,dp[i][j] = dp[i][k]+dp[k+1][j] ; #include<bits/stdc++.h> using namespace std; 阅读详情

相关推荐

2018年互联网技术岗(数据分析)暑期实习面试经验

  此经验帖适合想找互联网相关工作的人,如数据分析、算法工程师、数据挖掘工程师等。或者是想进入BAT等互联网公司的人,我会介绍他们暑期实习招聘流程及笔面试经验等,暑期实习往往是有转正机会的。友情提醒:本文均是干货,阅读本文大概需要5分钟。   简单介绍一下作者的情况,某985高校2017级应用统计专业型硕士(学制两年),研一下学期(2018年3月)开始投递暑期实习网申,于4月23号收到腾讯数据分...

zhq1186的博客 1万+

面试试题(C++方向)

1、C和C++的特点与区别? 答:(1)C语言特点: 1.作为一种面向过程的结构化语言,易于调试和维护; 2.表现能力和处理能力极强,可以直接访问内存的物理地址; 3.C语言实现了对硬件的编程操作,也适合于应用软件的开发; 4.C语言还具有效率高,可移植性强等特点。(2)C++语言特点: 1.在C语言的基础上进行扩充和完善,使C++兼容了C语言的面向过程特点,又成为了一种面向对象的程序设计语言...

Xiongchao99的博客 8万+

笔经-腾讯2018暑期实习生-数据分析岗笔试经历

发现今年虽然很多公司有了数据分析岗位面向本科生开放,但几乎数据分析师的实习笔试都没有考编程,注意是都没有考!这也给了我们一些启发,也试说明现在的数据分析岗位职能方向更细化。 不定项选择(每题4分共25题) 1.同事小鹅在训练深度学习模型是发现训练集误差不断减小,测试集误差不断增大,以下解决方法错误的是: (过拟合怎么处理) 数据增强 增加网络深度 提...

Ego_Bai的博客 3万+

2022.8.22腾讯技术研究笔试满分代码

第一题 求期望: #include <bits/stdc++.h> using namespace std; double input[505][505]; double a[505]; int main() { int n, m; cin>>n>>m; double ans=0; for(int i=0; i<n; i++){ for(int j=0; j<m; j++){ sca

johsnows的博客 3350

数据分析+数据挖掘暑期实习碎碎念

  写在前面 在闺蜜的博客乱写一篇关于最近春招的心得! 先念念叨一点麻痹自我的鸡汤。 鸡汤说:要有最朴素的生活与最遥远的梦想,即使明日天寒地冻,路遥马亡。 鸡汤还说:慢慢走比较快;踏实一点,你想要的岁月都会给你。 我爱鸡汤:) 2018.2.25,还赖在家睡懒觉的我,被同学发来的春季实习招聘链接给吵醒,那时候天真的以为时间还早,以为招聘时间持续那么久,再看看书,补补基础,趁着结束前达...

那什 2118

我拿到了网易严选数据分析暑期实习offer

乐于分享//江郎才尽--上班使我自顾不暇今天想给大家分享一位超级棒的学妹,之前在家的时候也跟她聊过许多,很高兴她能遵从自己的想法和内心坚定地走下去,也感谢她的此次分享,祝她以后一切顺利。...

胖里的博客 1937

【腾讯】技术研究类和数据分析-2019校园招聘 笔试题

腾讯的笔试是我遇过最难的了,选择题,全是数学,真的难,哎。 题目没拍,先贴上代码,后续补上。 第一题70%,第二题30%,第三题30%。 k = int(raw_input()) str1 = raw_input() str2 = raw_input() substring_set = set() len1 = len(str1) len2 = len(str2) for i in range(...

ferb的语音识别学习小站 1万+

[经验]2020届后台开发方向实习,秋招经验总结

文章目录[经验]2020届后台开发方向实习,秋招经验总结实习秋招准备1.算法题2.简历3.基础知识4.招聘信息5.智力题6.心态7.面经 [经验]2020届后台开发方向实习,秋招经验总结 实习 大三下,3月份开始找实习,当时对实习没有特别在意,只投了阿里,腾讯和华为。但实习其实是非常重要的,尤其对于本科生来说,实习后有项目经历才能在秋招时跟研究生竞争,而且很重要的一点是暑期实习是有机会转正的。 ...

个人博客 2738

2019腾讯暑期实习生技术研究与数据分析笔试

2020届腾讯暑期实习生技术研究与数据分析笔试 抱着一颗尝试的心态,投了腾讯的暑期实习生,昨晚刚笔试完,不出意外的凉凉,完全不会写=。= 全懵逼,呃,最后记了一下题目,现在分享下,给大家参考参考。 此次笔试分为不定项选择题25道和编程题3道,具体如下: 不定项选择题25题(满分100) 1.计算机相关 二叉树遍历,先序遍历、后续遍历、中序遍历 关系运算:投影、选择、自然连接 数据库查询、等 2.数...

weixin_43570097的博客 3159

淘天暑期实习-首页&amp;信息流Java-电话一面-已挂

我面试了零售部数据分析岗,下面将问题整理一下:一面1.自我介绍2.介绍一个实习中最深刻的项目1.这个。test1:有n张牌,你有两发子弹,需要分别同时命中第一张牌和最后一张张牌,尝试求出概率,结果四舍五。#小米集团# #小米# 历经千辛万苦,总算苦尽甘来昨天只收到一半offer,今天到处找,想办法,总算。大数据方向,能投的全都投了,只有腾讯和美团约面,腾讯ieg到三面挂后pcg捞,一面秒挂 美团面。本科小语种,双语专八,硕士MKT校园,有4年运营微信公众号的经历,包括采访、写稿、排版、摄影、修图、

华鑫的专栏 1013

腾讯校招经历汇总

一、腾讯校招流程 讯校招进行之前包含:内推和提前批两个环节;提前批没通过仍可以正常参加9月份的校园招聘 内推可参考:2018腾讯校园招聘内推启动 二、腾讯求职经验 2017腾讯校招面试回忆(成功拿到offer) 腾讯2017校招实习生面试总结 腾讯实习生面试经验 (已拿offer) ...

yph001的博客 8659

腾讯2019年暑期实习生招聘提前批在线笔试技术研究和数据分析方向

  前段时间参加了腾讯2019年暑期实习生招聘提前批技术研究和数据分析方向的笔试,上来就直接是5道编程题,当时做出来三道半,且还没有完全通过测试用例。   所以下来之后又详细的研究了一番。发现其实题没有想象中的那么难,只不过在当时紧张的情况下,思维受到了一些限制。这个仓库存放了我关于这5道题的解法。代码我放在我的github上了,有兴趣的同学可以Clone到本地。 如果有什么问题,欢迎交流:kab...

kabuto_hui的博客 4986

腾讯暑期实习算法/后台/数据分析网申真题

腾讯暑期实习算法/后台/数据分析网申真题腾讯暑期实习算法/后台/数据分析网申真题腾讯暑期实习算法/后台/数据分析网申真题

【笔试】京东数据分析暑期实习

时间:2019年4月13日,晚上7:00~9:00 京东暑期实习是我参加的最后一个公司的笔试,也是唯一过了的笔试。(因为一直忙的没时间准备,就直接拿笔试当学习机会。)京东数据分析的笔试是20道选择+2道编程题。(都不是很难) 其他大厂如腾讯提前批5道编程,腾讯正式批是2、30道选择+2道编程,头条4道编程,网易游戏选择+问答(要写SQL和2道分析问题),阿里选择+SQL+2道分析。还在同一天考...

sinat_37011930的博客 2793

中科蓝讯蓝牙耳机SDK实战:从目录解析到消息处理框架

本文深入解析中科蓝讯蓝牙耳机SDK的目录结构与消息处理框架,提供从硬件驱动到蓝牙功能定制的实战指南。重点剖析SDK核心模块如消息队列机制、按键事件处理及电量报告优化,并分享二次开发中的调试技巧与避坑经验,助力开发者高效完成TWS耳机功能定制。

weixin_30335575的博客 387

视觉辅助RIS波束追踪:用摄像头“看见”用户,实现毫秒级波束对准

在无线通信领域,波束成形技术是提升高频段信号覆盖与质量的核心手段,其原理是通过调整天线阵列的相位,使信号能量在特定方向相干叠加,形成高增益定向波束。这项技术的价值在于能有效克服高频信号路径损耗大、穿透性差的瓶颈,广泛应用于5G/6G、毫米波通信及室内定位等场景。然而,传统波束追踪依赖信道估计或波束扫描,存在训练开销大、实时性差的问题。本文聚焦于一种创新解决方案:将计算机视觉与可重构智能表面(RIS)相结合。通过摄像头直接感知用户位置,并利用RIS快速重构反射波束方向,实现了近乎零开销、毫秒级延迟的波束追踪,

weixin_33552698的博客 620

未明学院:你还在以找日常实习的自我要求来找暑期实习吗?

灵魂拷问:你找到暑假实习了吗? 3月初,包括腾讯、京东、字节跳动在内的中国顶尖互联网大厂相继推出暑期实习项目,面向2020届毕业生开放了近万实习岗位。 4月,快消、房产、四大等行业大厂相继加入,再次投放海量岗位为秋招预备人选。 如今,秋招都要开始了,眼看着别人多个实习经历傍身,即将征战秋招战场。你还在寻找暑期实习的困境中苦苦挣扎。 今天,我们就来仔细分析一下你为什么找不到暑期实习。 僧多...

EnlightenAcademy的博客 425

SAP-ABAP:SAP中如何查看系统表之间的关联关系?

在业务逻辑开发或者ALV开发过程中,我们通常要从系统中找出几个标准表之间的关联关系,有的是head与item,通过外键进行关联的关系。那么怎么去找到呢?以上就是具体如何产看系统表之间的关联关系的步骤,对于不同代码的业务顾问,也是必须要掌握的。

LinkStar的博客 2430

腾讯 2019 春季暑期实习生提前批笔试——技术研究与数据分析

1. 题目一 首先将数据排序,则两端的点距离最远肯定要舍弃一个,访问 n−1n-1n−1 个点只有两种情况,x1→xn−1或者x2→xnx_1 \to x_{n-1} 或者 x_2 \to x_{n}x1​→xn−1​或者x2​→xn​。假设访问的点是 x2→xnx_2 \to x_{n}x2​→xn​,则又有下图两种访问顺序,先右后左或者先左后右,距离分别为 dis1=2∗(xn−a)+(...

seniusen的博客 1623

RT-DETR改进策略【卷积层】| CVPR-2020 Strip Pooling 空间池化模块 处理不规则形状的对象 含二次创新

一、本文介绍 本文记录的是利用Strip Pooling模块优化RT-DETR的目标检测网络模型。Strip Pooling结合了长而窄的卷积核形状在一个空间维度上的长程关系捕捉能力和在另一个空间维度上的局部细节捕捉能力,有效地处理复杂的场景信息。这一机制通过采用1×N1×N1×N或N×1N×1N×1的池化核形状来适应不同的图像特征,提高模型对目标形状和分布的适应性。在场景解析网络中,Strip Pooling可以被用于提升对具有长程带状结构或离散分布目标的解析能力,特别是在复杂场景或不同对象布局条件下效果

Limiiiing的博客 580

Python爬虫实战:高效爬取中国专利数据库的完整指南

在当今信息爆炸的时代,专利数据作为技术创新的重要指标,对企业研发、市场分析和学术研究都具有极高价值。中国作为全球专利申请量最大的国家,其专利数据库包含了海量的技术创新信息。本文将详细介绍如何使用Python最新技术构建一个高效、稳定的中国专利数据库爬虫系统。中国专利数据库主要由国家知识产权局(CNIPA)维护,包含发明专利、实用新型专利和外观设计专利三大类。截至2023年,中国专利数据库已收录超过400万件发明专利和300万件实用新型专利。

2201_76125261的博客 1572
上一篇: hiho刷题日记——第三十一天小Hi小Ho的惊天大作战:扫雷·二
昂村饭
博客等级 码龄12年 5粉丝 34原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值