1. 世界杯开幕式

思路:跟leetcode上求岛屿数量问题很像,使用DFS,这里要注意的是搜索方向从4个变成了8个,并且要输出最大区域里的人数。

# coding:utf-8
M, N = list(map(int, raw_input().split(',')))book = []for i in range(M):line = list(map(int, raw_input().split(',')))book.append(line)class Solution:def __init__(self, grid):self.grid = grid# 当前区域的人数self.cnt = 0# 保存所有区域中的人数,返回其长度,及其最大值self.dp = []def dfs(self, i, j):if 0 <= i < M and 0 <= j < N:if self.grid[i][j] == 1:self.cnt += 1# 经过的点就置0self.grid[i][j] = 0# (i-1,j-1) (i-1,j) (i-1,j+1)# (i,j-1)   (i,j)   (i,j+1)# (i+1,j-1) (i+1,j) (i+1,j+1)# 8个方向搜索self.dfs(i - 1, j)self.dfs(i + 1, j)self.dfs(i, j - 1)self.dfs(i, j + 1)self.dfs(i - 1, j - 1)self.dfs(i + 1, j + 1)self.dfs(i + 1, j - 1)self.dfs(i - 1, j + 1)def solve(self):for i in range(M):for j in range(N):if self.grid[i][j] == 1:# 每找到一个新区域就清0,因为被搜索过的1都置0了,所以新区还是1self.cnt = 0self.dfs(i, j)if self.cnt > 0:self.dp.append(self.cnt)return len(self.dp), max(self.dp)

2. 文章病句标识

思路

  • 区间合并
  • 排序 + 贪心
    对 [l1,r1], [l2,r2],如果 r1 > l2,则 r1 = max(r1, r2)
# coding:utf-8
m = int(raw_input())
temp = []for _ in range(m):line = [list(map(int, item.split(','))) for item in raw_input().split(';')]# [[1, 10], [32, 45]]temp.extend(line)# 按每段病句[l, r]的第一个位置l排序
temp = sorted(temp, key=lambda x: x[0])# [[1, 10]]
ret = [temp[0]]# 与之后的病句段进行比较
for item in temp[1:]:# res[-1][1] == 10从后往前取# item == [32, 45], item[0] == 32if ret[-1][1] >= item[0]:# 贪心:对 [l1,r1], [l2,r2],如果 r1 > l2,则 r1 = max(r1, r2)# [5, 16], [16, 32], 16 >= 16, max(16, 32) ---> [5, 32]ret[-1][1] = max(ret[-1][1], item[1])else:# [[1, 10], [32, 45]]ret.append(item)s = ''# 不取最后一位,因为最后一位末尾不添加分号
for item in ret[:-1]:s += str(item[0]) + ',' + str(item[1]) + ';'# 单独处理
s += str(ret[-1][0]) + ',' + str(ret[-1][1])print s

3. 积分卡牌游戏

思路

  • 动态规划
  • DP 定义d[i][j]​ := 前 i 张牌,两人所选择的牌的差值为 j 时的最大值
  • 转移方程
    ​d[i][j] = max(d[i-1][j], d[i-1][j-x[i]] + y[i], d[i-1][j+x[i]] + y[i])​
# coding:utf-8
n = int(raw_input())
x, y = [], []for i in range(n):_x, _y = list(map(int, raw_input().split()))x.append(_x)y.append(_y)xy = list(zip(x, y))
# print xy
# 根据y的值进行排序
xy = sorted(xy, key=lambda t: t[1])
# print xyret = 0
# 如果所有 x 的和为偶数
# 直接输出所有 y 的和
if sum(x) % 2 == 0:print sum(y)
else:for i in range(len(xy)):if xy[i][0] % 2 == 1:# j只取偶数,排除掉x中的奇数项ret = sum([xy[j][1] for j in range(len(xy)) if j != i])print retbreak

思路:leetcode原题

N = int(raw_input())
line = list(map(int, raw_input().split()))count = 0for i in line:if count == 0:if i >> 3 == 0b11110:count = 3elif i >> 4 == 0b1110:count = 2elif i >> 5 == 0b110:count = 1elif i >> 7 == 0b0:count = 0else:print 0else:if i >> 6 == 0b10:count -= 1else:print 0print 1

字节跳动校招笔试题汇总相关推荐

  1. 2021.4.11 字节跳动实习笔试题---情报解密

    2021.4.11 字节跳动实习笔试题-情报解密 题目内容 题目内容: 给你一个字符串,该字符串中有数字,字母(字母只有大写字母)以及一些其他的字符(例如:%,.等),如果首字母为字母或者数字的话,就 ...

  2. 字节跳动2019笔试题

    突然看到好久之前做的字节跳动的笔试题,当时感觉挺难的.现在才来整理(太懒了...).只记得一个了,有一个算一个吧. 题目: 输入:第一行输入一个数n,表示下边有几行.接下来输入n行,每一行格式为1,2 ...

  3. 字节跳动校招面试题演练

    笔试: 1.扑克牌游戏,规则为开火车,牌多的获胜 2.计算任意一天到2012年3月12日的天数差 3.多门课程分班.条件为:每个班人数必须相同:一个班只能上一门课,一门课程可以多个班级:班级数量尽可能 ...

  4. 2019字节跳动研发笔试题题解(C++)

    第一题: 用STL的string的 find 和 erase: 首先,通过find找到需要删除的字符/字符串的位置: string str; string target; int pos = str. ...

  5. 字节跳动软件测试笔试题面试题-它终于来了

    岗位是深圳这边的IES系统的测试工程师... 第一次得到大厂的面试,心情有点小激动.面试全程线上,听面试官说她是一面.面试官是女士,带个眼镜的.黄头发. 1.自我介绍 2.我看你最近的工作才一年,换工 ...

  6. 字节跳动历届笔试题(3)

    题目描述 [编码题]字符串S由小写字母构成,长度为n.定义一种操作,每次都可以挑选字符串中任意的两个相邻字母进行交换.询问在至多交换m次之后,字符串中最多有多少个连续的位置上的字母相同? 输入描述: ...

  7. 字节跳动2019笔试题王大锤

    要求如下: 1.hellllo->hello 2.helloo->hello 3.hellooww->helloww JAVA实现 import java.util.Scanner; ...

  8. 这道字节跳动的面试题,据说多数人都不会

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试资料 前语:不要为了读文章而读文章,一定要带着问题来读文章,勤思考. 前 ...

  9. 2020字节跳动数据库面试题及答案(二)—— NoSQL部分

    本文答案整理为原创,转载请说明出处 文章目录 redis 的底层数据结构有哪些 redis 中的 SDS 和 C 语言中的字符串有什么区别,优点是什么 redis 中的字典是如何实现的,如何解决冲突和 ...

最新文章

  1. 走近云计算:解密IaaS、PaaS和SaaS
  2. php 情书,PHP好玩的代码一(笛卡尔的情书)
  3. ssl1063-统计数字【哈希表】
  4. 我们在进行着一场拔河比赛……
  5. javascript关键字_让我们揭开JavaScript的“ new”关键字的神秘面纱
  6. 显卡天梯图:2014最新显卡性能天梯图
  7. 玩游戏用什么轴的机械键盘好_机械键盘下的“轴”到底是什么?
  8. 频频霸榜的 Python,竟遭开发者嫌弃!
  9. create---创建表
  10. 算法笔记_面试题_12.二叉搜索树的最近公共祖先
  11. Android TextView 跑马灯效果和 EditText 冲突解决办法
  12. 一张纸(5毫米)折叠多少次可以达到珠穆朗玛峰的高度(8848米)?
  13. [洛谷 P1647]锁 --- 规律 + 二进制
  14. C语言:va_list
  15. git新branch创建
  16. 使用U盘离线安装CentOS、包括5到8四个版本
  17. SRC挖洞之信息收集篇
  18. 《Poluparity Prediction on Social Platforms with Coupled Graph Neural Networks》阅读笔记
  19. c语言语法记不住,学习技巧 | 总是记不住英语语法!这些速记口诀,你一定需要!...
  20. jxr怎么变成jpg_怎么将DWG文档转成图片格式

热门文章

  1. 地质勘查项目管理困难重重,需要专业软件来解决
  2. OAuth2.0最简向导(多图预警)
  3. 【转载】遥感影响数据集整理
  4. Leetcode 781 森林里的兔子(C++)
  5. android 谷歌地图围栏,如何在谷歌地图与c做地理围栏#
  6. 个人职业生涯规划发展的一些图
  7. 【Django | allauth】登录_注册_邮箱验证_密码邮箱重置
  8. 【油猴脚本】B站弹幕机器人
  9. autojs免root脚本引擎开发的QQ空间说说点赞源码
  10. Zookeeper1:相关理论