刚开始写技术文章,不合理的地方请谅解;算法都有详细的注释,请大家批评指正!!! 题目描述:给定一个字符串 s ,找出这样一个子串: 1)该子串中的任意一个字符最多出现2次; 2)该子串不包含指定某个字符; 请你找出满足该条件的最长子串的长度。 输入描述: 第一行为要求不包含的指定字符,为单个字符,取值范围[0-9a-zA-Z] 第二行为字符串s,每个字符范围[0-9a-zA-Z],长度范围[1,1
题目描述:小明在学习二进制时,发现了一类不含101的数,也就是:- 将数字用二进制表示,不能出现101。现在给定一个正整数区间[l,r],请问这个区间内包含了多少个不含101的数? 输入描述:输入的唯一一行包含两个正整数l,r(1<=l<r<=109)。 示例:1 10 输出描述:输出的唯一一行包含一个整数,表示在 [l,r] 区间内一共有几个不含 101 的数。 示例:8
题目描述 学校组织活动,将学生排成一个矩形方阵。 请在矩形方阵中找到最大的位置相连的男生数量。 这个相连位置在一个直线上,方向可以是水平的,垂直的,成对角线的或者呈反对角线的。 注:学生个数不会超过10000 输入描述 输入的第一行为矩阵的行数和列数,接下来的n行为矩阵元素,元素间用”,”分隔。 输出描述 输出一个整数,表示矩阵中最长的位置相连的男生个数。 用例 输入 3,4 F,M,M,F F,
题目描述 给定一个正整数数组表示待系统执行的任务列表,数组的每一个元素代表一个任务,元素的值表示该任务的类型。 请计算执行完所有任务所需的最短时间。 任务执行规则如下: 任务可以按任意顺序执行,且每个任务执行耗时间均为1个时间单位。 两个同类型的任务之间必须有长度为N个单位的冷却时间,比如N为2时,在时间K执行了类型3的任务,那么K+1和K+2两个时间不能执行类型3任务。 系统在任何一个单位时间内
原文链接 【华为OD机试 】 任务最优调度(C++ Java JavaScript Python) 题目描述 给定一个正整数数组表示待系统执行的任务列表,数组的每一个元素代表一个任务,元素的值表示该任务的类型。 请计算执行完所有任务所需的最短时间。 任务执行规则如下: 任务可以按任意顺序执行,且每个任务执行耗时间均为1个时间单位。 两个同类型的任务之间必须有长度为N个单位的冷却时间,比如N为2时,
题目描述 [九宫格]按键输入,输出显示内容,有英文和数字两个模式,默认是数字模式,数字模式直接输出数字,英文模式连续按同一个按键会依次出现这个按键上的字母,如果输入”/”或者其他字符,则循环中断。 字符对应关系如图: 要求输入一串按键,输出屏幕显示。 输入描述 输入范围为数字 0~9 和字符’#’、’/’,输出屏幕显示,例如, 在数字模式下,输入 1234,显示 1234 在英文模式下,输入 12
[斗地主]起源于湖北十堰房县,据说是一位叫吴修全的年轻人根据当地流行的扑克玩法“跑得快”改编的,如今已风靡整个中国,并流行于互联网上。 牌型:单顺,又称顺子,最少5张牌,最多12张牌(3…A)不能有2,也不能有大小王,不计花色。 例如: 3-4-5-6-7-8,7-8-9-10-J-Q,3-4-5-6-7-8-9-10-J-Q-K-A 可用的牌 3<4<5<6<7<8<9<10<J<Q<K<A<2
题目描述 给定一个由纯数字组成以字符串表示的数值,现要求字符串中的每个数字最多只能出现2次,超过的需要进行删除; 删除某个重复的数字后,其它数字相对位置保持不变。 如”34533″,数字3重复超过2次,需要删除其中一个3,删除第一个3后获得最大数值”4533″ 请返回经过删除操作后的最大的数值,以字符串表示。 输入描述 第一行为一个纯数字组成的字符串,长度范围:[1,100000] 输出描述 输出
题目描述 某地有N个广播站,站点之间有些有连接,有些没有。有连接的站点在接受到广播后会互相发送。 给定一个N*N的二维数组matrix,数组的元素都是字符’0’或者’1’。 matrix[i][j] = ‘1’, 代表i和j站点之间有连接, matrix[i][j] = ‘0’, 代表没连接, 现在要发一条广播,问初始最少给几个广播站发送,才能保证所有的广播站都收到消息。 输入描述 从stdin输
本来是要考华为OD机试才开始做算法题,结果被告知非目标院校不考虑;奈何本人脾气倔,肯定要把这件事坚持下来!!! 题目描述:公司老板做了一笔大生意,想要给每位员工分配一些奖金,想通过游戏的方式来决定每个人分多少钱。 按照员工的工号顺序,每个人随机抽取一个数字。按照工号的顺序往后排列,遇到第一个数字比自己数字大的,那么,前面的员工就可以获得距离 * 数字差值的奖金。 如果遇不到比自己数字大的,就给自己
总结:面试官人很好,我太菜了 上来先自我介绍 接着手撕代码: 力扣1004 最大连续1的个数 给定一个二进制数组 nums 和一个整数 k,如果可以翻转最多 k 个 0 ,则返回 数组中连续 1 的最大个数 。 输入:nums = [1,1,1,0,0,0,1,1,1,1,0], K = 2 输出:6 解释:[1,1,1,0,0,1,1,1,1,1,1] 翻转后最长的子数组长度为 6。 今天脑子有