字节跳动游戏研发岗编程题记录

第一题:输入出生日期,判断到18岁时的天数。若没有18岁,则输出-1。

思路:使用SimpleDateFormat,将输入的字符串自动转换为日期格式。

1 输入的出生日期为birthday,转换为日期birthDate;

2 之后,将年份+18,使用String.format进行拼接,将18岁生日时的日期拼接为字符串后转为日期。

3 最后根据时间戳计算总的毫秒数,总的毫秒数除以每天的毫秒数,即得出天数。

字节跳动游戏研发岗编程题记录_第1张图片

第二题:牛客网正则表达式

第三题思路:(暴力求解)N最大为10000,若全部都买150的药品.则可买68份;若全部都买200的药品,则可买51份;若全部买350的药品,则可买29份。采用组合方式,三层for循环找出所有可能的购买方式,将所有购买方式所用费用存入数组。对数组进行排序。输入随身钱数T,根据二分查找方法,从费用数组中找到小于T的最大值即可。

字节跳动游戏研发岗编程题记录_第2张图片

问答题一:

1 判断矩阵交叉:矩阵A[2*3],矩阵B[3*3]

思路:若交叉,则将矩阵合在一起后的宽度 < 2+3;高度<3+3.

2 判断元素是否在矩阵内部:元素(x,y),矩阵[m,n]

思路:x,y与矩阵右下角元素坐标作对比,判断大小。

字节跳动游戏研发岗编程题记录_第3张图片

你可能感兴趣的:(字节跳动游戏研发岗编程题记录)