华为练习
阳光_八月
make it work.
展开
-
华为机试——任意正整数编码为字符串
输入一个正整数,并编码为字符串进行输出 描述: 1、输入一个正整数,并编码为字符串进行输出。编码规则为:数字0-9分别编码为字符a-j2、输入肯定是正整数,不用做错误较验运行时间限制: 无限制 内存限制: 无限制 输入: 正整数输出: 字符串样例输入: 123 样例输出: bcd 答案提示: 编写一个main函数实现该功能算法。原创 2014-04-15 16:31:18 · 1039 阅读 · 0 评论 -
华为初级——十六进制转换为十进制
描述:写出一个程序,接收一个十六进制的数值字符串,输出该数值的十进制字符串。知识点:字符串,循环,函数,指针题目来源:内部整理练习阶段:初级运行时间限制:10sec内存限制:128MByte输入:输入一个十六进制的数值字符串。输出该数值的十进制字符串。样例输入:0xA样例输出10温馨提示:华为的系统是不需要有提示信息的。"请输入十六进制数:","please原创 2014-05-19 17:09:12 · 3207 阅读 · 0 评论 -
华为初级——(练习用)挑7
源程序:#include#includeusing namespace std;int main(){ int n;char buffer[6]; int count=0; int len; cin>>n; for(int i=1;i<=n;i++) { if((i%7)==0)count++; else { itoa(i,buffer,10);原创 2014-06-29 22:15:08 · 1418 阅读 · 2 评论 -
华为初级——百钱买百鸡
百钱买百鸡是经典问题,很简单,我的只是寻常解法。原创 2014-07-02 09:11:04 · 1417 阅读 · 0 评论 -
华为初级——iNOC产品部:杨辉三角形的变形
总结:这道题目的关键在于求出这个变形的杨辉三角形。其实题目的描述有很大问题,但是已经给出了变形了的杨辉三角形,所以,可以根据例出来的三角形来写出程序。首先:写出求杨辉三角形的程序:每一行的第一个数和最后一个数都是1;第二行的第二个数是1,;从第三行开始,每一行的第二个数是前一行的第一个数与第二个数之和,每一行的倒数第二个数是前一行的倒数第一个数与倒数第二个数的和。然后:求出第n行的第一个偶数出现的位置。注意:如果这一行没有偶数,则输出-1。这道题目不是很难~原创 2014-07-01 19:29:40 · 1304 阅读 · 0 评论 -
华为初级——尼科彻斯定理
尼科彻斯定理问题,不是很难,不过,我也花了一些时间,主要原因是理不清头绪,修改了很久。我写的程序都是在主函数里面实现的,没有根据描述里面的自定义函数写,而且,我觉得自己对于用字符串输出不熟练,不知道怎么用字符串输出,但是华为oj平台里面只要符合它的输入和输出,就是对的。并且,我在提交的程序里面没有考虑周全,当输入1时,程序没有输出结果,不过,我在后面发现之后,加上了边界条件i<=m就OK了。今天看了《人人都有好工作》,但是里面谈到说要记录自己学的东西,要写出有质量的博客,差距还很远,加油。原创 2014-07-09 18:30:14 · 1580 阅读 · 0 评论 -
华为练习——识别有效的IP地址和子网掩码——中级
#include#include#include#includeusing namespace std;int main(){ int A=0,B=0,C=0,D=0,E=0;//A、B、C、D、F类IP个数 int err_ip_mask=0; int private_ip=0;//私网IP个数 int ip[4], netmask[4], myip[8]; int inp转载 2014-09-02 21:46:53 · 1654 阅读 · 0 评论 -
长沙专场--【长沙专场】2015届SO挑战赛(晋级赛20日上午)
#includeusing namespace std;int main(){ int a,b; cin>>a>>b; if(a%5!=0) a=a+5-a%5; int count=0; for(int i=a;i<=b;i=i+5) { if(i%2==0&&i%3==0&&i%5==0) count=count+1; } cout<<count<<endl原创 2014-09-21 13:14:26 · 1543 阅读 · 0 评论 -
华为机试——字符串过滤&字符串压缩
我最初写程序的时候,没有考虑周全,只考虑的连续重复出现的字符的个数小于10个的情况,误以为使用k++;语句就可以解决问题。这是错误的思想!原创 2014-04-15 10:05:06 · 1022 阅读 · 0 评论 -
华为初级——名字的漂亮度
总结:我觉得这道题目还是很不错的。唯一不足的地方是题目没有描述清楚:名字的漂亮度=26*字母个数最多的+25*字母个数其次的+24*字母个数再其次的……其中要计算每个字母出现的频次,这里用到的算法int b[26]={0};b[[a[i][j]-'a']++;是我以前从别人的算法中学过来的。还要对频次进行排序,而且名字的漂亮度有两个量:字母的频次*字母的漂亮度。虽然是道初级题,个人认为还是可以考查基本功~哈哈,每天都登陆华为OJ平台,希望可以进华为哈~原创 2014-06-27 10:11:28 · 2238 阅读 · 3 评论 -
华为初级——图片整理
图片整理,首先看到这个题目以为很难,后来才发现很容易。原创 2014-06-26 10:03:01 · 1115 阅读 · 0 评论 -
华为机试——五分制成绩:break和continue的区分
五分制成绩描述: 对于一个给定的百分制成绩,输出相应的五分制成绩。设:90分及以上为'A'。80-89分为'B',70-79分为'C',60-69分为'D',60分一下为'E',不合法的输入,输出ERROR。源程序:原创 2014-04-15 19:24:59 · 1192 阅读 · 0 评论 -
华为中级——字符串分割
描述:连续输入字符串(输出次数为N,字符串长度小于100),请按长度为8拆分每个字符串后输出到新的字符串数组,长度不是8整数倍的字符串请在后面补数字0,空字符串不处理。例如:输入:2abc 12345789输出:abc00000 12345678 90000000接口函数设计如下:/**********************************原创 2014-05-19 18:57:51 · 2397 阅读 · 0 评论 -
华为初级——字符个数统计(三种情况)
描述:写出一个程序,接受一个有字母和数字组成的字符串,和一个字符,然后输出输入字符串中含有该字符的个数。不区分大小写。知识点:字符串,函数,指针 题目来源:内部整理 练习阶段:初级 运行时间限制:10Sec 内存限制:128MByte 输入:输入一个有字母和数字组成的字符串,和一个字符。 输出:输出输入字符串中含有该字符的个数。 样例输入:ABCDEF原创 2014-05-19 20:30:03 · 1968 阅读 · 0 评论 -
华为初级——提取不重复的整数
描述:输入一个int型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。知识点:数组题目来源:内部整理练习阶段:初级运行时间限制:10sec内存限制:128MByte输入:输入一个int型整数输出:按照从右向左的阅读顺序,返回一个不含重复数字的新的整数样例输入:9876673样例输出:37689源程序:#includeusing names原创 2014-05-19 19:49:03 · 1685 阅读 · 0 评论 -
华为初级——字符串加密
描述:有一种技巧可以对数据进行加密,它使用一个单词作为它的密匙。下面是它的工作原理:首先,选择一个单词作为密匙,如TRAILBLAZERS。如果单词中包含有重复的字母,只保留第1个,其余几个丢弃。现在,修改过的那个单词死于字母表的下面,如下所示:A B C D E F G H I J K L M N O P Q R S T U V W X Y ZT R A I L B Z E S C D原创 2014-05-20 15:58:48 · 2281 阅读 · 0 评论 -
华为初级——句子逆序
句子逆序:将句子反转,但是单词不能反转。比如输入:I am a girl 输出:girl a am I,再比如:输入:this is a test 输出:test a is this这是初级题,用到了简单的数组。我的实现用到了4个循环,复杂度比较高了。原创 2014-05-20 12:25:33 · 1910 阅读 · 0 评论 -
华为初级——自守数
描述:自守数是指一个数的平方的尾数等于该数自身的自然数。例如:25^2=625,76^2=5776,9376^2=87909376.请求出n以内的自守数的个数接口说明原型:unsigned int CalAutomorphicNumbers(unsigned int n);输入参数:unsigned int n返回值:n以内自守数的数量知识点:题目来源:内部整理练习阶段原创 2014-05-20 14:09:28 · 1415 阅读 · 0 评论 -
华为初级——合唱队
提示:这是属于动态规划问题。动态规划算法通常用于求解具有某种最优性质的问题。在这类问题中,可能会有许多可行解。每一个解都对应于一个值,我们希望找到具有最优值的解。其实这道题目有一些问题:不能交换位置,这个关键的信息在题目中间没有进行说明。编程思路是:需要三个数组,第一个数组存放原数据。第二个数组用于存放人数:从左向右遍历时,对于当前的数据(身高),寻找符合条件的人数,要求是从小到大排列的最原创 2014-06-25 10:56:44 · 3429 阅读 · 0 评论 -
华为练习--查找两个字符串a,b中的最长公共子串
这个问题:查找两个字符串中的最长公共子串是一个很常见的问题。以前一直都没搞懂,现在终于弄明白了。但是我这里使用的是string类以及它相关的函数。还可以不用string类来实现。原创 2014-09-11 16:17:54 · 1420 阅读 · 3 评论