华为OD机试真题-跳马-2024年OD统一考试(D卷) 题目描述: 马是象棋(包括中国象棋和国际象棋)中的棋子,走法是每步直一格再斜一格,即先横着或直着走一格,然后再斜着走一个对角线,可进可退,可越过河界,俗称“马走‘日’字。 给顶m行n列的棋盘(网格图),棋盘上只有有棋子象棋中的棋子“马”,并且每个棋子有等级之分,等级为k的马可以跳1~k步(走的方式与象棋中“马”的规则一样,不可以超出棋盘位置)
【表达式计算】: 给定一个字符串形式的表达式,保证每个字符串表达式中仅包含加(+)这1种运算符,计算并输出表达式结果。 要注意的是,+号两边的数据仅可能包含数字字符、小数点字符与特殊字符,特殊字符包括!@#,这些特殊字符的加法运算有特别的规则: !+!=0 !+@=13 !+#=4 @+@=7 @+#=20 #+#=5 注意: 1.保证每个表达式仅包含—个运算符 2.保证表达式一定可运算且有数据结
三月初开始准备机试,只能说接触过Python(大学零散看过几节基础课的水平),看视频,装Python,Pychram,边看边做记录知识点,不看视频的时候看菜鸟,算是比较勤恳,很像考前突击了。 四天后,开始做对接人发的牛客网上的老题库,边看边查笔记补笔记,忘空格报错,括号中文报错,print少打字母报错……错着错着就度过了青涩期。慢慢地,sort排序,lambda函数,推导式,多个排序……牛客网上的
在我get,但是中也没有给出令牌。 检索令牌的代码: 结果也不例外。但是令牌是空的(请参见最后一行日志)。 关于手机和应用程序的信息: 手机:华为Y7P Android系统:10 EMUI:10.1.0 agconnect: 普希基特: agconnect-core: 自动初始化: 英国皇家海军服务: null null
背景:20届自动化转java,目标院校。有工科基础,算法基础,无实习 一、题目: 2道100分,一道200分,100分的题提交了以后才能做200分的题。 1.检查IP,牛客例题有(100分) 2.类似跳台阶:(100分) 第一行一串数字(正数表示往上跳,负数表示往下跳)作为数组, 第二行一个目标值,要求选择数组中的两个数,有重复值但不可以复选,两步跳到目标值。 要求输出所有方案中,在输入数组中的索
题目描述: 给定两个字符串string1和string2。 string1是一个被加扰的字符串。string1由小写英文字母('a'~'z')和数字字符('0'~'9')组成,而加扰字符串由'0'~'9'、'a'~'f'组成。string1里面可能包含0个或多个加扰子串,剩下可能有0个或多个有效子串,这些有效子串被加扰子串隔开。 string2是一个参考字符串,仅由小写英文字母('a'~'z')组
题目描述: 部门组织绿道骑行团建活动。租用公共双人自行车骑行,每辆自行车最多坐两人、做大载重M。 给出部门每个人的体重,请问最多需要租用多少双人自行车。 输入描述: 第一行两个数字m、n,自行车限重m,代表部门总人数n。 第二行,n个数字,代表每个人的体重。体重都小于等于自行车限重m。 0 < m <= 200 0 < n <= 1000000 输出描述: 最小需要的双人自行车数量。 示例1 输入
题目描述: 为了解决新学期学生暴涨的问题,小乐村要建所新学校。考虑到学生上学安全问题,需要所有学生家到学校距离最短。 假设学校和所有的学生家,走在一条直线上。 请问,学校要建在什么位置,能使得学校到各个学生家的距离之和最短? 输入描述: 输入的第一行是一个整数N(1<=N<=1000),表示有N户家庭。 输入的第二行是一个属组 (0<= <=10000),表示每户家庭的位置,所有家庭的位置都不相同
题目描述: 商人经营一家店铺,有number种商品,由于仓库限制每件商品的最大持有数量是item[index],每种商品的价格在每天是item_price[item_index][day],通过对商品的买进和卖出获取利润,请给出商人在days天内能获取到的最大的利润; 注: 同一件商品可以反复买进和卖出; 输入描述: 3 // 输入商品的数量 number 3 // 输入商人售货天数 days
题目描述: 小明在学习二进制时,发现了一类不含101的数,也就是: - 将数字用二进制表示,不能出现101。 现在给定一个正整数区间[l,r],请问这个区间内包含了多少个不含101的数? 输入描述: 输入的唯一一行包含两个正整数l,r(1<=l<r<=109)。 输出描述: 输出的唯一一行包含一个整数,表示在[l,r]区间内一共有几个不含101的数。 示例1 输入: 1 10 输出: 8 说明:
题目描述: A公司准备对他下面的N个产品评选最差奖,评选的方式是首先对每个产品进行评分,然后根据评分区间计算相邻几个产品中最差的产品。评选的标准是依次找到从当前产品开始前M个产品中最差的产品,请给出最差产品的评分序列。 输入描述: 第一行,数字M,表示评分区间的长度,取值范围是0<M<10000 第二行,产品的评分序列,比如[12,3,8,6,5],产品数量N范围是-10000<N<10000 输
题目描述: 有一组区间 [a0, b0], [a1, b1], ... (a, b 表示起点, 终点),区间有可能重叠、相邻,重叠或相邻则可以合并为更大的区间;给定一组连接器[x1, x2, x3, ...](x 表示连接器的最大可连接长度,即 x>=gap),可用于将分离的区间连接起来,但两个分离区间之间只能使用1个连接器;请编程实现使用连接器后,最少的区间数结果。 区间数量 <10000;a,
题目描述: 定义字符串完全由 'A' 和 'B'组成,当然也可以全是'A'或全是'B'。如果字符串从前往后都是以字典序排列的,那么我们称之为严格递增字符串。 给出一个字符串s,允许修改字符串中的任意字符,即可以将任何的'A'修改成'B',也可以将任何的'B'修改成'A',求可以使s满足严格递增的最小修改次数。0<s的长度<100000。 输入描述: 输入一个字符串: "AABBA" 输出描述: 输
题目描述: 给定一组数字,表示扑克牌的牌面数字,忽略扑克牌的花色,请按如下规则对这一组扑克牌进行整理: 步骤1、对扑克牌进行分组,形成组合牌,规则如下: 当牌面数字相同张数大于等于4时,组合牌为“炸弹”; 3张相同牌面数字 + 2张相同牌面数字,且3张牌与2张牌不相同时,组合牌为“葫芦”; 3张相同牌面数字,组合牌为“三张”; 2张相同牌面数字,组合牌为“对子”; 剩余没有相同的牌,则为“单张”;
好不甘心,C++,通过85%,感觉思路比较清楚,有无大佬给点修改意见 int num; cin>>num; int a, b; vector<vector<int>> vec; int x = 1000000; int y = -1; while (cin >> a >> b) { //确定运行时间的左右区间 if (x > a) x = a; if (y < b) y = b; vector<i