刷题-华为机试
开源学开源
这个作者很懒,什么都没留下…
展开
-
计算日期到天数转换/华为机试(C/C++)
题目描述根据输入的日期,计算是这一年的第几天。。详细描述:输入某年某月某日,判断这一天是这一年的第几天?。接口设计及说明: /***************************************************************************** Description : 数据转换 Input Param : year 输入年份...原创 2018-10-10 22:40:11 · 1104 阅读 · 0 评论 -
放苹果/华为机试(C/C++)
题目描述题目描述把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示)5,1,1和1,5,1 是同一种分法。输入每个用例包含二个整数M和N。0<=m<=10,1<=n<=10。样例输入7 3样例输出8/*** 计算放苹果方法数目* 输入值非法时返回-1* 1 <= m,n &l...翻译 2018-09-26 19:30:05 · 687 阅读 · 0 评论 -
查找组成一个偶数最接近的两个素数/华为机试(C/C++)
题目描述任意一个偶数(大于2)都可以由2个素数组成,组成偶数的2个素数有很多种情况,本题目要求输出组成指定偶数的两个素数差值最小的素数对输入描述:输入一个偶数输出描述:输出两个素数示例1输入20输出713代码://第五十八题 查找组成一个偶数最接近的两个素数#include<iostream>using namespace...原创 2018-09-26 15:33:39 · 393 阅读 · 0 评论 -
找出字符串中第一个只出现一次的字符(题面已经更新)/华为机试(C/C++)
题目描述找出字符串中第一个只出现一次的字符输入描述:输入一个非空字符串输出描述:输出第一个只出现一次的字符,如果不存在输出-1示例1输入asdfasdfo输出o代码://第五十七题 找出字符串中第一个只出现一次的字符(题面已经更新)#include<iostream>#include<string>using ...原创 2018-09-26 15:01:26 · 1598 阅读 · 0 评论 -
表达式求值/华为机试(C/C++)
题目描述给定一个字符串描述的算术表达式,计算出结果值。输入字符串长度不超过100,合法的字符包括”+, -, *, /, (, )”,”0-9”,字符串内容的合法性及表达式语法的合法性由做题者检查。本题目只涉及整型计算。输入描述:输入算术表达式输出描述:计算出结果值示例1输入400+5输出405代码://第五十二题 表达式求值#incl...原创 2018-09-20 20:40:56 · 757 阅读 · 0 评论 -
iNOC产品部-杨辉三角的变形/华为机试(C/C++)
题目描述 1 1 1 1 1 2 3 2 1 1 3 6 7 6 3 11 4 10 16 19 16 10 4 1以上三角形的数阵,第一行只有一个数1,以下每行的每个数,是恰好是它上面的数,左上角数到右上角的数,3个数之和(如果不存在某个数,认为该数就是0)。求第n行第一个偶数出现的...原创 2018-09-20 20:35:49 · 297 阅读 · 0 评论 -
输入n个整数,输出其中最小的k个/华为机试(C/C++)
题目描述输入n个整数,输出其中最小的k个。详细描述:接口说明原型:bool GetMinK(unsignedint uiInputNum, int * pInputArray, unsignedint uiK, int * pOutputArray);输入参数: unsignedint uiInputNum //输入整数个数int * pInputArray...原创 2018-09-25 21:48:05 · 1500 阅读 · 0 评论 -
无线OSS-高精度整数加法/华为机试(C/C++)
题目描述在计算机中,由于处理器位宽限制,只能处理有限精度的十进制整数加减法,比如在32位宽处理器计算机中,参与运算的操作数和结果必须在-2^31~2^31-1之间。如果需要进行更大范围的十进制整数加法,需要使用特殊的方式实现,比如使用字符串保存操作数和结果,采取逐位运算的方式。如下:9876543210 + 1234567890 = ?让字符串 num1="9876543210",字符...原创 2018-09-25 21:30:44 · 289 阅读 · 0 评论 -
iNOC产品部--完全数计算/华为机试(C/C++)
题目描述完全数(Perfect number),又称完美数或完备数,是一些特殊的自然数。它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身。例如:28,它有约数1、2、4、7、14、28,除去它本身28外,其余5个数相加,1+2+4+7+14=28。给定函数count(int n),用于计算n以内(含n)完全数的个数。计算范围, 0 < n <= ...原创 2018-09-25 19:26:56 · 245 阅读 · 0 评论 -
输出单向链表中倒数第k个结点/华为机试(C/C++)
题目描述输入一个单向链表,输出该链表中倒数第k个结点,链表的倒数第1个结点为链表的尾指针。链表结点定义如下:struct ListNode{ int m_nKey; ListNode* m_pNext;};详细描述:接口说明原型:ListNode* FindKthToTail(ListNode* pListHead, un...原创 2018-09-13 21:00:07 · 809 阅读 · 0 评论 -
四则运算/华为机试(C/C++)
题目描述请实现如下接口 /* 功能:四则运算 * 输入:strExpression:字符串格式的算术表达式,如: "3+2*{1+2*[-4/(8-6)+7]}" * 返回:算术表达式的计算结果 */ public static int calculate(String strExpression) { ...翻译 2018-09-13 20:20:26 · 1289 阅读 · 0 评论 -
称砝码/华为机试(C/C++)
题目描述现有一组砝码,重量互不相等,分别为m1,m2,m3…mn;每种砝码对应的数量为x1,x2,x3...xn。现在要用这些砝码去称物体的重量(放在同一侧),问能称出多少种不同的重量。注:称重重量包括0方法原型:public static int fama(int n, int[] weight, int[] nums)输入描述:输入包含多组测试数据。对于每组测试...转载 2018-09-10 21:26:52 · 1379 阅读 · 0 评论 -
输入一行字符,分别统计出包含英文字母、空格、数字和其它字符的个数/华为机试(C/C++)
题目描述输入一行字符,分别统计出包含英文字母、空格、数字和其它字符的个数。 /** * 统计出英文字母字符的个数。 * * @param str 需要输入的字符串 * @return 英文字母的个数 */ public static int getEnglishCharCount(String str) { ...原创 2018-09-10 20:21:36 · 4064 阅读 · 0 评论 -
判断两个IP是否属于同一子网/华为机试(C/C++)
题目描述子网掩码是用来判断任意两台计算机的IP地址是否属于同一子网络的根据。子网掩码与IP地址结构相同,是32位二进制数,其中网络号部分全为“1”和主机号部分全为“0”。利用子网掩码可以判断两台主机是否中同一子网中。若两台主机的IP地址分别与它们的子网掩码相“与”后的结果相同,则说明这两台主机在同一子网中。示例:I P 地址 192.168.0.1子网掩码 255.255.255...原创 2018-09-10 20:06:55 · 3558 阅读 · 0 评论 -
多线程/华为机试(C/C++)
题目描述问题描述:有4个线程和1个公共的字符数组。线程1的功能就是向数组输出A,线程2的功能就是向字符输出B,线程3的功能就是向数组输出C,线程4的功能就是向数组输出D。要求按顺序向数组赋值ABCDABCDABCD,ABCD的个数由线程函数1的参数指定。[注:C语言选手可使用WINDOWS SDK库函数]接口说明:void init(); //初始化函数void Release(); ...原创 2018-09-12 21:36:42 · 528 阅读 · 0 评论 -
从单向链表中删除指定值的节点/华为机试(C/C++)
题目描述输入一个单向链表和一个节点的值,从单向链表中删除等于该值的节点,删除后如果链表中无节点则返回空指针。链表结点定义如下:struct ListNode{int m_nKey;ListNode* m_pNext;};详细描述:本题为考察链表的插入和删除知识。链表的值不能重复构造过程,例如1 <- 23 <- 25 ...翻译 2018-09-12 20:57:19 · 2258 阅读 · 0 评论 -
线性插值/华为机试(C/C++)
题目描述信号测量的结果包括测量编号和测量值。存在信号测量结果丢弃及测量结果重复的情况。 1.测量编号不连续的情况,认为是测量结果丢弃。对应测量结果丢弃的情况,需要进行插值操作以更准确的评估信号。 采用简化的一阶插值方法,由丢失的测量结果两头的测量值算出两者中间的丢失值。 假设第M个测量结果的测量值为A,第N个测量结果的测量值为B。则需要进行(N-M-1)个测量结果的插值处理...转载 2018-09-12 20:09:55 · 953 阅读 · 0 评论 -
查找输入整数二进制中1的个数/华为机试(C/C++)
题目描述请实现如下接口 public static int findNumberOf1( int num) { /* 请实现 */ return 0; } 譬如:输入5 ,5的二进制为101,输出2涉及知识点:输入描述:输入一个整数输出描述:计算整数二进制中1的个数示例1输入...原创 2018-09-26 19:52:57 · 684 阅读 · 0 评论 -
DNA序列/华为机试(C/C++)
题目描述一个DNA序列由A/C/G/T四个字母的排列组合组成。G和C的比例(定义为GC-Ratio)是序列中G和C两个字母的总的出现次数除以总的字母数目(也就是序列长度)。在基因工程中,这个比例非常重要。因为高的GC-Ratio可能是基因的起始点。给定一个很长的DNA序列,以及要求的最小子序列长度,研究人员经常会需要在其中找出GC-Ratio最高的子序列。输入描述:输入一个stri...原创 2018-09-26 20:20:22 · 1009 阅读 · 0 评论 -
MP3光标位置/华为机试(C/C++)
题目描述MP3 Player因为屏幕较小,显示歌曲列表的时候每屏只能显示几首歌曲,用户要通过上下键才能浏览所有的歌曲。为了简化处理,假设每屏只能显示4首歌曲,光标初始的位置为第1首歌。现在要实现通过上下键控制光标移动来浏览歌曲列表,控制逻辑如下: 歌曲总数<=4的时候,不需要翻页,只是挪动光标位置。 光标在第一首歌曲上时,按Up键光标挪到最后一首歌曲;光标在最后一首歌曲时,...原创 2018-09-26 21:23:16 · 285 阅读 · 0 评论 -
百钱买百鸡问题/华为机试(C/C++)
题目描述公元前五世纪,我国古代数学家张丘建在《算经》一书中提出了“百鸡问题”:鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?详细描述:接口说明原型:int GetResult(vector &list)输入参数: 无输出参数(指针指向的内存区域保证有效): list 鸡翁、鸡母、鸡雏组合的列表返...原创 2018-10-10 22:03:39 · 2690 阅读 · 0 评论 -
字符串通配符/华为机试(C/C++)
题目描述问题描述:在计算机中,通配符一种特殊语法,广泛应用于文件搜索、数据库、正则表达式等领域。现要求各位实现字符串通配符的算法。要求:实现如下2个通配符:*:匹配0个或以上的字符(字符由英文字母和数字0-9组成,不区分大小写。下同)?:匹配1个字符输入:通配符表达式;一组字符串。输出:返回匹配的结果,正确输出true,错误输出false输入描述:先输入一个带...翻译 2018-10-10 21:49:40 · 1242 阅读 · 0 评论 -
矩阵乘法计算量估算/华为机试(C/C++)
题目描述矩阵乘法的运算量与矩阵乘法的顺序强相关。例如: A是一个50×10的矩阵,B是10×20的矩阵,C是20×5的矩阵 计算A*B*C有两种顺序:((AB)C)或者(A(BC)),前者需要计算15000次乘法,后者只需要3500次。编写程序计算不同的计算顺序需要进行的乘法次数输入描述:输入多行,先输入要计算乘法的矩阵个数n,每个矩阵的行数,列数,总共2n的数...翻译 2018-10-10 20:52:06 · 677 阅读 · 0 评论 -
矩阵乘法/华为机试(C/C++)
二维数组分配、释放题目描述 如果A是个x行y列的矩阵,B是个y行z列的矩阵,把A和B相乘,其结果将是另一个x行z列的矩阵C。这个矩阵的每个元素是由下面的公式决定的: 原型:voidmatrix_multiply(int *m1,int *m2,int *r, int x, int y, int z);输入参数: int *m1:x行y列的矩阵(array1[x][y...原创 2018-10-10 20:23:08 · 626 阅读 · 0 评论 -
成绩排序/华为机试(C/C++)
题目描述查找和排序题目:输入任意(用户,成绩)序列,可以获得成绩从高到低或从低到高的排列,相同成绩 都按先录入排列在前的规则处理。 例示: jack 70 peter 96 Tom 70 smith 67 从高到低 成绩 peter 96 jack...原创 2018-10-10 19:27:04 · 481 阅读 · 0 评论 -
表示数字/华为机试(C/C++)
题目描述将一个字符中所有出现的数字前后加上符号“*”,其他字符保持不变 public static String MarkNum(String pInStr) { return null; }输入描述:输入一个字符串输出描述:字符中所有出现的数字前后加上符号“*”,其他字符保持不变示例1输入Jkdi234klowe90a3输出Jkd...原创 2018-10-18 19:43:15 · 643 阅读 · 0 评论 -
配置文件恢复/华为机试(C/C++)
题目描述有6条配置命令,它们执行的结果分别是:<colgroup><col style="width&#58;181px&#59;" width="181"/><col style="width&#58;347px&#59;" width="346"/></co翻译 2018-09-28 21:11:07 · 624 阅读 · 0 评论 -
字符串匹配/华为机试(C/C++)
题目描述题目标题:判断短字符串中的所有字符是否在长字符串中全部出现详细描述:接口说明原型:boolIsAllCharExist(char* pShortString,char* pLongString);输入参数: char* pShortString:短字符串 char* pLongString:长字符串 输入描述:输入两个字符串。第一...原创 2018-10-13 22:11:36 · 758 阅读 · 0 评论 -
整形数组合并/华为机试(C/C++)
题目描述题目标题:将两个整型数组按照升序合并,并且过滤掉重复数组元素[注: 题目更新了。输出之后有换行]详细描述:接口说明原型:voidCombineBySort(int* pArray1,intiArray1Num,int* pArray2,intiArray2Num,int* pOutputArray,int* iOutputNum);输入参数:int* pAr...原创 2018-10-13 21:44:02 · 815 阅读 · 1 评论 -
计算字符串的相似度/华为机试(C/C++)
题目描述对于不同的字符串,我们希望能有办法判断相似程度,我们定义了一套操作方法来把两个不相同的字符串变得相同,具体的操作方法如下:1 修改一个字符,如把“a”替换为“b”。2 增加一个字符,如把“abdd”变为“aebdd”。3 删除一个字符,如把“travelling”变为“traveling”。比如,对于“abcdefg”和“abcdef”两个字符串来说,我们认为可以通过增...转载 2018-10-13 21:11:20 · 3512 阅读 · 0 评论 -
超长正整数相加/华为机试(C/C++)
题目描述请设计一个算法完成两个超长正整数的加法。接口说明 /* 请设计一个算法完成两个超长正整数的加法。 输入参数: String addend:加数 String augend:被加数 返回值:加法结果 */ public String AddLongInteger(String addend, String augend) { /*在这里实现功能*/ ...原创 2018-10-13 20:48:03 · 1741 阅读 · 0 评论 -
查找两个字符串a,b中的最长公共子串/华为机试(C/C++)
题目描述查找两个字符串a,b中的最长公共子串。若有多个,输出在较短串中最先出现的那个。输入描述:输入两个字符串输出描述:返回重复出现的字符示例1输入abcdefghijklmnopabcsafjklmnopqrstuvw输出jklmnop代码://第六十三题 查找两个字符串a,b中的最长公共子串#include<iostream...翻译 2018-09-28 08:19:11 · 2306 阅读 · 0 评论 -
火车进站/华为机试(C/C++)
题目描述给定一个正整数N代表火车数量,0<N<10,接下来输入火车入站的序列,一共N辆火车,每辆火车以数字1-9编号。要求以字典序排序输出火车出站的序列号。 输入描述:有多组测试用例,每一组第一行输入一个正整数N(0<N<10),第二行包括N个正整数,范围为1到9。输出描述:输出以字典序从小到大排序的火车出站序列号,每个编号以空格隔开,每个输出序列换行,...原创 2018-10-11 22:03:45 · 1492 阅读 · 0 评论 -
尼科彻斯定理/华为机试(C/C++)
题目描述验证尼科彻斯定理,即:任何一个整数m的立方都可以写成m个连续奇数之和。例如:1^3=1 2^3=3+5 3^3=7+9+11 4^3=13+15+17+19 接口说明原型: /* 功能: 验证尼科彻斯定理,即:任何一个整数m的立方都可以写成m个连续奇数之和。 原型: int GetSequeOddNum(int m,char * p...原创 2018-10-11 21:48:30 · 853 阅读 · 0 评论 -
公共字串计算/华为机试(C/C++)
题目描述题目标题:计算两个字符串的最大公共字串的长度,字符不区分大小写详细描述:接口说明原型:int getCommonStrLength(char * pFirstStr, char * pSecondStr);输入参数: char * pFirstStr //第一个字符串 char * pSecondStr//第二个字符串输入描述:输...原创 2018-10-11 20:04:32 · 331 阅读 · 0 评论 -
参数解析/华为机试(C/C++)
题目描述在命令行输入如下命令:xcopy /s c:\ d:\,各个参数如下: 参数1:命令字xcopy 参数2:字符串/s参数3:字符串c:\参数4: 字符串d:\请编写一个参数解析程序,实现将命令行各个参数解析出来。 解析规则: 1.参数分隔符为空格 2.对于用“”包含起来的参数,如果中间有空格,不能解析为多个参数。比如在命令行输入xcopy /s...原创 2018-10-11 19:38:55 · 486 阅读 · 0 评论 -
查找兄弟单词/华为机试(C/C++)
题目描述 输入描述:先输入字典中单词的个数,再输入n个单词作为字典单词。输入一个单词,查找其在字典中兄弟单词的个数再输入数字n输出描述:根据输入,输出查找到的兄弟单词的个数示例1输入3 abc bca cab abc 1输出2 bca代码1://第二十七题 查找兄弟单词#include<iostream>#include&...原创 2018-09-06 21:11:35 · 999 阅读 · 0 评论 -
字符串排序/华为机试(C/C++)
题目描述编写一个程序,将输入字符串中的字符按如下规则排序。规则 1 :英文字母从 A 到 Z 排列,不区分大小写。 如,输入: Type 输出: epTy规则 2 :同一个英文字母的大小写同时存在时,按照输入顺序排列。 如,输入: BabA 输出: aABb规则 3 :非英文字母的其它字符保持原来的位置。 如,输入: By?e 输...原创 2018-09-06 16:40:28 · 1024 阅读 · 0 评论 -
求小球落地5次后所经历的路程和第5次反弹的高度/华为机试(C/C++)
题目描述假设一个球从任意高度自由落下,每次落地后反跳回原高度的一半; 再落下, 求它在第5次落地时,共经历多少米?第5次反弹多高? /** * 统计出第5次落地时,共经过多少米? * * @param high 球的起始高度 * @return 英文字母的个数 */ public static double getJ...原创 2018-09-09 17:40:40 · 782 阅读 · 0 评论 -
删除字符串中出现次数最少的字符/华为机试(C/C++)
题目描述实现删除字符串中出现次数最少的字符,若多个字符出现次数一样,则都删除。输出删除这些单词后的字符串,字符串中其它字符保持原来的顺序。 输入描述:字符串只包含小写英文字母, 不考虑非法输入,输入的字符串长度小于等于20个字节。输出描述:删除字符串中出现次数最少的字符后的字符串。示例1输入abcdd输出dd代码://第二十三题 删除字符串中出...转载 2018-09-04 22:08:10 · 2932 阅读 · 0 评论