华为上机
52coder
道貌何其深,岸然唯我真
展开
-
计算整数的位数
描述: 输入一个五位以内(包括5位)的正整数,(1)判断它是一个几位数;(2)逆序输出其各位数字。 题目类别: 位运算 难度: 初级 运行时间限制:10Sec内存限制:128MByte阶段: 入职前练习 输入: 多组数据,每组一行原创 2015-06-29 17:35:40 · 779 阅读 · 0 评论 -
求子数组的最大和
输入一个整形数组。数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。求所有子数组的和的最大值。接口Int GetSubArraySum(Int* pIntArray,Int nCount);规格要求时间复杂度为O(n)举例例如输入的数组为1, -2, 3, 10, -4, 7, 2, -5,和最大的子数组为3原创 2015-07-03 23:33:04 · 865 阅读 · 0 评论 -
指定字符删除
题目描述:输入字符串s和字符c,要求去掉s中所有的c字符,并输出结果。 接口说明:原型:int removechars(char *in, char c, char *out);输入参数: char *in 输入字符串char c输出参数: char *out 输出处理后的字符串返回值:0:主要注意对in==NULL判断.原创 2015-07-04 23:03:31 · 358 阅读 · 0 评论 -
整型反序
简要描述:给出一个不多于5位的整数, 进行反序处理要求:1、求出它是几位数2、分别输出每一位数字3、按逆序输出各位数字,例如原数为321,应输出123(仅数字间以空格间隔, 负号与数字之间不需要间隔) 例如:输入:12345输出:51 2 3 4 554321 注意:如果是负数,负号加在第一个数字之前, 与数字原创 2015-07-04 15:51:57 · 1720 阅读 · 0 评论 -
字符串加解密
题目描述1、对输入的字符串进行加解密,并输出。2加密方法为:当内容是英文字母时则用该英文字母的后一个字母替换,同时字母变换大小写,如字母a时则替换为B;字母Z时则替换为a;当内容是数字时则把该数字加1,如0替换1,1替换2,9替换0;其他字符不做变化。3、解密方法为加密的逆过程。 接口描述: 实现接口,每个接口实原创 2015-07-05 12:07:29 · 856 阅读 · 0 评论 -
水仙花数
水仙花数又称阿姆斯特朗数。水仙花数是指一个n 位数( n≥3 ),它的每个位上的数字的n 次幂之和等于它本身。(例如:1^3 + 5^3 + 3^3 = 153)求输入的数字是否为水仙花数此题纠正了我一个错误的认识,我一直以为水仙花数是每位的立方和等于这个数,原因是以前经常求的是三位数.完整满分代码如下:#include "oj.h"// 功能:判断输入原创 2015-07-03 23:01:29 · 997 阅读 · 0 评论 -
找出升序数组中和为给定值的两个数字
输入一个已经按升序排序过的数组和一个数字,在数组中查找两个数,使得它们的和正好是输入的那个数字。如果有多对数字的和等于输入的数字,输出任意一对即可。详细描述:接口说明原型:bool FindTwoNumbersWithSum(int aData[], unsignedint uiLength, int sum, int *pNum1, int *pNum2)原创 2015-07-04 23:01:42 · 1141 阅读 · 0 评论 -
字符变换
输入一个字符串,将其中大写字母转换为对应小写字母之后的第五个字母,若原始大写字母为V~Z, 则转换为对应小写字母的值减21。其他字符不变,输出转换后的字符串。 例如,对于字母A,则转换为小写字母f;若形参是字母W,则转换为小写字母b。#include #include using namespace std;int main(){ char str[100]; cin>>str;原创 2015-07-06 10:02:39 · 1694 阅读 · 0 评论 -
计算二进制数的0的个数
描述: 输入一个10进制数字,请计算该数字对应二进制中0的个数,注意左数第一个1之前的所有0都不需要计算。不需要考虑负数的情况。 题目类别: 位运算 难度: 初级 运行时间限制:无限制内存限制:无限制阶段: 入职前练习 输入: 要计原创 2015-07-06 10:11:18 · 1025 阅读 · 0 评论 -
整数分隔
描述: 一个整数总可以拆分为2的幂的和,例如: 7=1+2+4 7=1+2+2+2 7=1+1+1+4 7=1+1+1+2+2 7=1+1+1+1+1+2 7=1+1+1+原创 2015-07-06 22:59:54 · 871 阅读 · 0 评论 -
数字基root
描述: 求整数的Root:给定正整数,求每位数字之和;如果和不是一位数,则重复; 题目类别: 数组 难度: 初级 运行时间限制:10Sec内存限制:128MByte阶段: 入职前练习 输入: 输入任意一个或多个整数原创 2015-07-07 11:50:44 · 474 阅读 · 0 评论 -
字符串替换
写出一个程序,接受三个参数,分别是一个字符串和两个字符,然后输出替换字符后的字符串。区分大小写。 例如1:输入:ABCDEF,A,B输出:BBCDEF 例如2:输入:AABCDEF,A,C输出:CCBCDEF/*功能: 输入: 输出: 返回:成功0,其它-1原创 2015-07-06 17:07:10 · 734 阅读 · 0 评论 -
将字符串中不同字符的个数打印出来
描述: 找出字符串中,不同的字符的个数。 题目类别: 字符串 难度: 初级 运行时间限制:无限制内存限制:无限制阶段: 入职前练习 输入: 输入一个字符串,'\0'作为字符串结束符。 输出: 输出原创 2015-07-06 23:26:37 · 1832 阅读 · 0 评论 -
数列求和
题目描述 编写程序,输入一个正整数n,求下列算式的值。要求定义和调用函数fact(k)计算k的阶乘。1+1/2!+ .... +1/n!计算结果保存在double类型变量中。接口说明原型:void GetResult(int InputNum, double *NumResult);输入参数: Int InputNu原创 2015-07-07 00:16:00 · 1408 阅读 · 5 评论 -
找出字符串中第一个出现次数最多的字符
找出字符串中第一个出现次数最多的字符详细描述:接口说明原型:bool FindChar(char* pInputString, char* pChar);输入参数:char* pInputString:字符串输出参数(指针指向的内存区域保证有效):char* pChar:出现次数最多的字符返回值: false 异常失原创 2015-07-07 10:52:50 · 1789 阅读 · 0 评论 -
关于作者
在CSDN上发布自己学习工作生活中遇到的问题,记录相关解决方法,如果能帮助到有需要的人我会万分高兴。因为我在工作中遇到了问题,查询中会优先参考CSDN,CSDN的博文帮助我解决了很多问题,在此感谢各位。我的个人博客地址是52coder.net,如果关于文章有任何疑问欢迎留言讨论。关于我:一个半路出家的IT从业人员,一个后知后觉的IT技术人员,现在努力,希望还不晚.目前主原创 2017-08-21 11:53:04 · 310 阅读 · 0 评论 -
兔子产子
从前有一对长寿的兔子,他们每个月生出一对小兔子,第一个月新生产的兔子两个月就长大了,在第三个月初开始生他们的下一代小兔子,这样一代一代的生下去,不考虑兔子的寿命,求第n个月出生多少对小兔子 简单示例:比如输入1,第一个月出生的兔子只有一对,所以输出为1比如输入2,第二个月出生的兔子只有一对,所以输出为1比如输出为3,则该月份有两对兔子出生,则输出为2原创 2015-07-05 10:13:01 · 1055 阅读 · 0 评论 -
查找同构数的数量
找出1至n之间同构数的个数。同构数是这样一组数:它出现在平方数的右边。例如:5是25右边的数,25是625右边的数,5和25都是同构数。详细描述:接口说明原型:intSearchSameConstructNum(int n);输入参数: int n:查找1至n之间的全部同构数返回值: int:1至n之间同构原创 2015-07-04 10:50:02 · 1332 阅读 · 0 评论 -
字符串反转
写出一个程序,接受一个字符串,然后输出该字符串反转后的字符串。例如:输入:abc输出:cba完整代码:#include #include #include "oj.h"/*功能: 输入: 输出: 返回:success :0,fail:-1 */int ProcessString(char * strInput,char原创 2015-07-04 16:38:20 · 675 阅读 · 0 评论 -
求int型数据在内存中存储时1的个数
1.求int型数据在内存中存储时1的个数输入一个int型数据,计算出该int型数据在内存中存储时1的个数。我们很容易想到如下方法:#include using namespace std;int main(){ int n,cnt=0; cin>>n; while(n) { if(n%2==1) cnt++; n=n/2; } cout<<cnt<<en原创 2015-06-28 19:44:50 · 2442 阅读 · 0 评论 -
字符串反转
写出一个程序,接受一个字符串,然后输出该字符串反转后的字符串。#include #include using namespace std;int Reserve(char *str){ int len=strlen(str); char *begin,*end; begin=str; end=begin+len-1; if(str!=NULL) { while(be原创 2015-06-28 23:39:21 · 648 阅读 · 2 评论 -
句子逆序
将一个英文语句以单词为单位逆序排放。例如“I am a boy”,逆序排放后为“boy a am I”所有单词之间用一个空格隔开,语句中除了英文字母外,不再包含其他字符。思路:先将字符串逆序,然后从左至右扫描,遇到空格,再逆序前面的字符串,直到字符串尾部.有更简单思路的,欢迎留言讨论.代码如下:#include #include using namespace st原创 2015-06-28 22:10:12 · 872 阅读 · 3 评论 -
字符串最后一个单词的长度
描述: 计算字符串最后一个单词的长度,单词以空格隔开。 题目类别: 字符串 难度: 初级 运行时间限制:无限制内存限制:无限制阶段: 入职前练习 输入: 一行字符串,长度小于128。 输出:原创 2015-06-29 17:29:27 · 561 阅读 · 0 评论 -
求某二进制数中1的个数
题目标题:求某二进制数中1的个数。给定一个unsigned int型的正整数,求其二进制表示中“1”的个数,要求算法的执行效率尽可能地高。详细描述:接口说明原型:int GetCount(unsigned int num)输入参数: num 给定的正整数输出参数(指针指向的内存区域保证有效): 无原创 2015-06-30 00:38:23 · 437 阅读 · 0 评论 -
24点
问题描述:给出4个1-10的数字,通过加减乘除,得到数字为24就算胜利输入:4个1-10的数字。[数字允许重复,测试用例保证无异常数字]输出:True or False例如输入:7 2 1 10输出:True/*********************************************************************原创 2015-07-02 21:55:09 · 996 阅读 · 0 评论 -
汽水瓶
描述: 有这样一道智力题:“某商店规定:三个空汽水瓶可以换一瓶汽水。小张手上有十个空汽水瓶,她最多可以换多少瓶汽水喝?”答案是5瓶,方法如下:先用9个空瓶子换3瓶汽水,喝掉3瓶满的,喝完以后4个空瓶子,用3个再换一瓶,喝掉这瓶满的,这时候剩2个空瓶子。然后你让老板先借给你一瓶汽水,喝掉这瓶满的,喝完以后用3个空瓶子换一瓶满的还给老板。如果小张手上有n个空汽水瓶,最多可以换多少瓶汽水喝?原创 2015-07-02 11:41:56 · 774 阅读 · 0 评论 -
周期串问题
题目标题:如果一个字符串可以由某个长度为k的字符串重复多次得到,我们说该串以k为周期。例如,abcabcabcabc以3为周期(注意,它也可以6和12为周期,结果取最小周期3)。字符串的长度小于等于100,由调用者保证。 详细描述:接口说明原型: int GetMinPeriod(char *inputstring);输入参数:原创 2015-07-02 16:38:30 · 1279 阅读 · 0 评论 -
求M的N次方的最后三位
正整数M 的N次方有可能是一个非常大的数字,我们只求该数字的最后三位例1:比如输入5和3 ,5的3次方为125,则输出为125 例2:比如输入2和10 2的10次方为1024 ,则输出结果为24例3:比如输入111和5 111的5次方为116850581551,则输出结果为551unsigned int GetLastThreeNumO原创 2015-07-01 23:24:54 · 1264 阅读 · 0 评论 -
取给定正整数的指定bit位开始的指定长度的数据
接口说明原型:unsigned int GetBitsValue(unsigned int input, unsigned int startbit, unsigned int bitlen)输入参数: input 输入的整数 startbit 需要获取的开始bit bitlen原创 2015-07-02 15:04:29 · 832 阅读 · 0 评论 -
删除重复字符
删除重复字符给定一个字符串,将字符串中所有和前面重复多余的字符删除,其余字符保留,输出处理后的字符串。需要保证字符出现的先后顺序,并且区分大小写。详细描述:接口说明原型:int GetResult(const char *input, char *output)输入参数: input 输入的字符串输出参数(需考虑指针指向的原创 2015-07-02 23:04:04 · 821 阅读 · 0 评论 -
上楼梯问题
爱因斯坦出了一道这样的数学题:有一条长阶梯,若每步跨2阶,则最最后剩一阶,若每步跨3 阶,则最后剩2阶,若每步跨5阶,则最后剩4阶,若每步跨6阶则最后剩5阶。只有每次跨7阶,最后才正好一阶不剩。请问这条阶梯共有多少阶?#include #include "oj.h"// 功能:计算满足条件的楼梯的长度// 输入: 无// 输出:无// 返回: 无unsigned int Get原创 2015-07-02 23:57:38 · 1013 阅读 · 0 评论 -
阿姆斯特朗数
如果一个正整数等于其各个数字的立方和,则该数称为阿姆斯特朗数(亦称为自恋性数),1除外,如407 = 43+03+73就是一个阿姆斯特朗数。试编程求n(n ≤ 65536)以内的所有阿姆斯特朗数。 接口说明原型: int CalcArmstrongNumber(int n);输入参数: int n: n ≤ 65536 返原创 2015-07-03 10:49:42 · 1262 阅读 · 0 评论 -
求圆的面积
题目背景计算半径为1到10的圆的面积,若面积在40到90之间请输出接口int OutPutRotundityArea(float* pResultArray,int &ArrayCount)float* pResultArray :float型数组Int ArrayCount:数组长度规格要求时间复杂度为O(n)原创 2015-07-04 11:04:59 · 1648 阅读 · 0 评论 -
排序算法总结
排序就是将一组对象按照某种逻辑顺序重新排列的过程,本文是记录学习排序的总结,持续更新,计划一周时间,视工作忙与否而定。选择排序算法思路: 首先找到数组中的最小元素,其次将它和数组的第一个元素交换位置。再次在剩下的元素中找到最小元素,将它与数组的第二个元素交换位置。如此反复,直到将整个数组排序。 算法实现:#include <stdio.h>void SelectionSort(int a[],原创 2017-11-14 00:07:50 · 336 阅读 · 0 评论