九度OJ题
huhuichun
这个作者很懒,什么都没留下…
展开
-
数字的颠倒
#includeusing namespace std;void reverse(int num){ if(num return ; int temp; int i=0; char str[200]; if(num==0) cout while(num) { temp=num%10; str[i]=temp+'0';原创 2015-07-09 09:39:59 · 398 阅读 · 0 评论 -
自守数
//自守数是指一个数的平方的尾数等于该数自身的自然数。//例如:252 = 625,762 = 5776,93762 = 87909376。请求出n以内的自守数的个数#include#includeusing namespace std;//如n=25,则a=100;625%100=25int getResult(int n){ int a=1; whi原创 2015-07-08 20:38:48 · 627 阅读 · 0 评论 -
尼科彻斯定理
//验证尼科彻斯定理,即:任何一个整数m的立方都可以写成m个连续奇数之和。#includeusing namespace std;void GetSequeOddNum(int m,char *pcSecOddNum){ if(m100||pcSecOddNum==NULL) return ; int sum=m*m*m; int sum1=2*m*m;原创 2015-07-08 20:40:38 · 339 阅读 · 0 评论 -
整数排序
//实现输入一组大于等于0的整数,根据从小到大的顺序排序后输出,排序后有连续数时,只输出连续数中最小和最大的两个数。 题目类别: 排序 难度: 高级 分数: 运行时间限制: 10 Sec 内存限制: 128 MByte 阶段: 招聘管理 输入: 一组大于等于0的整数,不考虑非法输入,各个整数之间以逗号(“,”)分隔, 输入字符串的总长度小于等于100个字节原创 2015-07-08 20:41:49 · 438 阅读 · 0 评论 -
查找组成一个偶数最接近的两个素数
//任意一个偶数(大于2)都可以由2个素数组成,组成偶数的2个素数有很多种情况,本题目要求输出组成指定偶数的两个素数差值最小的//素数对#include#includeusing namespace std;bool IsPrime(int n){ if(n return false; if(n==2) return true; for(in原创 2015-07-08 20:43:06 · 336 阅读 · 0 评论 -
字符串的压缩
//通过键盘输入一串小写字母(a~z)组成的字符串。请编写一个字符串压缩程序,将字符串中连续出席的重复字母进行压缩,并输出压缩后的字符串。//压缩规则://1. 仅压缩连续重复出现的字符。比如字符串"abcbc"由于无连续重复字符,压缩后的字符串还是"abcbc".//2. 压缩字段的格式为"字符重复的次数+字符"。例如:字符串"xxxyyyyyyz"压缩后就成为"3x6yz"原创 2015-07-08 20:44:44 · 356 阅读 · 0 评论 -
输入一段英文文本,用程序统计出现频率最高和最低的两个单词;
//输入一段英文文本,用程序统计出现频率最高和最低的两个单词;//英文文本中仅出现这四类字符:空格( )、英文逗号(,)、英文句号(.)、英文大小写字母(a-z、A-Z)//单词之间的分隔符仅考虑这三种:空格( )、英文逗号(,)、英文句号(.);//仅大小写不同的单词算同一个单词;//如果两个单词出现次数相同,则在文本中首次出现的单词优先返回。//返回的单词统一用小写原创 2015-07-08 20:48:50 · 3868 阅读 · 0 评论 -
输入整型数组和排序标识,对其元素按照升序或降序进行排序
//输入整型数组和排序标识,对其元素按照升序或降序进行排序#include#includeusing namespace std;int cmp0(int x,int y){ return x>y;}int cmp1(int x,int y){ return x}void sortIntegerArray(int* pIntegerArray原创 2015-07-09 11:35:16 · 792 阅读 · 0 评论 -
将一个十六进制的字符串转化为一个十进制的字符串
//写出一个程序,接受一个十六进制的数值字符串,输出该数值的十进制字符串#includeusing namespace std;void getresult(char *str){ if(str==NULL) return ; int sum=0; int quan=1; int len=strlen(str); for(int i=len-1;i原创 2015-07-09 11:26:19 · 353 阅读 · 0 评论 -
从输入任意个整型数,统计其中的负数个数并求所有非负数的平均值
//从输入任意个整型数,统计其中的负数个数并求所有非负数的平均值#include#include#includeusing namespace std;void getResult(vector& data,int len){ if(data.size()==0||len return; int count=0; double avg=0.0;原创 2015-07-09 11:31:39 · 5792 阅读 · 0 评论 -
判断IP地址的合法性
//现在IPV4下用一个32位无符号整数来表示,一般用点分方式来显示,点将IP地址分成4个部分,每个部分为8位,表示成一个无符号整数//(因此不需要用正号出现),如10.137.17.1,是我们非常熟悉的IP地址,一个IP地址串中没有空格出现(因为要表示成一个32数字)。//现在需要你用程序来判断IP是否合法。#includeusing namespace std;bo原创 2015-07-09 11:37:59 · 1287 阅读 · 0 评论 -
求一个整数四舍五入后的结果,该整数可以是正数负数
//写出一个程序,接受一个浮点数值,输出该数值的近似整数值。如果小数点后数值大于等于5,向上取整;小于5,则向下取整。#includeusing namespace std;void interge(float num){ int flag=0; if(num { flag=1; num=-num; } int n=(int)num; f原创 2015-07-09 09:41:59 · 582 阅读 · 0 评论 -
字符串的分割
//连续输入字符串,请按长度为8拆分每个字符串后输出到新的字符串数组;//长度不是8整数倍的字符串请在后面补数字0,空字符串不处理。#includeusing namespace std;void getResult(char *str){ if(str==NULL) return; while(1) { if(strlen(str) {原创 2015-07-09 11:27:14 · 221 阅读 · 0 评论 -
找出给定字符在字符串中出现的次数
//写出一个程序,接受一个有字母和数字以及空格组成的字符串,和一个字符,然后输出输入字符串中含有该字符的个数。不区分大小写#includeusing namespace std;void getResult(char *str,char s){ if(str==NULL||s==NULL) return; int len=strlen(str); int原创 2015-07-09 11:29:09 · 1136 阅读 · 0 评论 -
字符串的翻转
//将一个字符串str的内容颠倒过来,并输出。str的长度不超过100个字符。 如:输入“I am a student”,输出“tneduts a ma I”。#includeusing namespace std;void reverse(char *pBegin,char* pEnd){ if(pBegin==NULL||pEnd==NULL) return;原创 2015-07-09 11:30:58 · 310 阅读 · 0 评论 -
明明的随机数
//明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤100),//对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。然后再把这些数从小到大排序,//按照排好的顺序去找同学做调查。请你协助明明完成“去重”与“排序”的工作。#include#include#include原创 2015-07-08 20:36:43 · 355 阅读 · 0 评论 -
图片整理
//Lily上课时使用字母数字图片教小朋友们学习英语单词,每次都需要把这些图片按照大小(ASCII码值从小到大)排列收好。//请大家给Lily帮忙,通过C语言解决。#include#include#includeusing namespace std;void getResult(char* s){ int len=strlen(s); if(len10原创 2015-07-08 21:06:33 · 263 阅读 · 0 评论 -
输入一个10进制数字,请计算该数字对应二进制中0的个数,注意左数第一个1之前的所有0都不需要计算。不需要考虑负数的情况。
//输入一个10进制数字,请计算该数字对应二进制中0的个数,注意左数第一个1之前的所有0都不需要计算。不需要考虑负数的情况。#includeusing namespace std;int getResult(int n){ if(n==0) return -1; int count=0; char str[100]; int i=0; while(原创 2015-07-08 21:05:47 · 930 阅读 · 0 评论 -
等差数列
//等差数列//功能:等差数列 2,5,8,11,14。。。。//输入:正整数N >0//输出:求等差数列前N项和//返回:转换成功返回 0 ,非法输入与异常返回-1#includeusing namespace std;bool getResult(int n){ if(n return -2; int a=2; int b=a; f原创 2015-07-09 11:36:26 · 384 阅读 · 0 评论 -
求int型数据在内存中存储时1的个数
#includeusing namespace std;void main(){ int n; while(cin>>n) { int count=0; while(n) { n=n&(n-1); count++; } cout }}原创 2015-07-08 20:33:50 · 331 阅读 · 0 评论 -
输入一个int型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。
#includeusing namespace std;void fun(int num){ int flag=0; if(num { flag=1; num=-num; } int temp; int hash[10]; memset(hash,0,sizeof(hash)); int i=0; int j=0; in原创 2015-07-08 20:35:18 · 3808 阅读 · 0 评论 -
求输入A和B的最小公倍数。
//正整数A和正整数B 的最小公倍数是指 能被A和B整除的最小的正整数值,设计一个算法,求输入A和B的最小公倍数。#includeusing namespace std;//求最大公约数的函数int fun(int m,int n){ if(m { int temp=m; m=n; n=temp; } while(n) { i原创 2015-07-08 20:37:41 · 1030 阅读 · 0 评论 -
将输入的字符串(字符串仅包含小写字母‘a’到‘z’),按照如下规则,循环转换后输出:a->b,b->c,…,y->z,z->a;
//将输入的字符串(字符串仅包含小写字母‘a’到‘z’),按照如下规则,循环转换后输出:a->b,b->c,…,y->z,z->a;//若输入的字符串连续出现两个字母相同时,后一个字母需要连续转换2次。例如:aa 转换为 bc,zz 转换为 ab;//当连续相同字母超过两个时,第三个出现的字母按第一次出现算。#includeusing namespace std;voi原创 2015-07-08 20:45:53 · 3814 阅读 · 0 评论 -
在给定字符串中找出单词
//在给定字符串中找出单词(“单词”由大写字母和小写字母字符构成,其他非字母字符视为单词的间隔,如空格、问号、数字等等;//另外单个字母不算单词);找到单词后,按照长度进行降序排序,(排序时如果长度相同,则按出现的顺序进行排列),//然后输出到一个新的字符串中;如果某个单词重复出现多次,则只输出一次;如果整个输入的字符串中没有找到单词,请输出空串。//输出的单词之间使用一个“空原创 2015-07-08 20:47:08 · 3249 阅读 · 0 评论 -
名字的漂亮度
//名字的漂亮度,首先将名字中的大写全部改为小写,再计算每个字符出现的次数,存储在数组中,然后将改数组升序排序//给出一个名字,该名字有26个字符串组成,定义这个字符串的“漂亮度”是其所有字母“漂亮度”的总和。//每个字母都有一个“漂亮度”,范围在1到26之间。没有任何两个字母拥有相同的“漂亮度”。字母忽略大小写。//给出多个名字,计算每个名字最大可能的“漂亮度”。//名字原创 2015-07-08 20:50:19 · 1649 阅读 · 0 评论 -
如果数组长度n为奇数,则将数组中最大的元素放到 output[] 数组最中间的位置
//如果数组长度n为奇数,则将数组中最大的元素放到 output[] 数组最中间的位置,如果数组长度n为偶数,则将数组中最大的元素放到//output[] 数组中间两个位置偏右的那个位置上,然后再按从大到小的顺序,依次在第一个位置的两边,按照一左一右的顺序,//依次存放剩下的数。#include#includeusing namespace std;void get原创 2015-07-08 20:51:59 · 668 阅读 · 0 评论 -
挑7
//相关数:判断比整数N小的数里,有多少个与7相关的数(比如7、14、17、27)。只需要给出总的个数,不需要输出。(挑7)#includeusing namespace std;bool Is7(int n){ while(n) { if(n%10==7) return true; n/=10; } return false;}原创 2015-07-08 20:54:08 · 234 阅读 · 0 评论 -
if语句中括号的匹配
编程的时候,if条件里面的“(”、“)”括号经常出现不匹配的情况导致编译不过,请编写程序检测输入一行if语句中的圆括号是否匹配正确。同时输出语句中出现的左括号和右括号数量,如if((a==1)&&(b==1))是正确的,而if((a==1))&&(b==1))是错误的。注意if语句的最外面至少有一对括号。输入:if((a==1)&&(b==1))输出:RIGTH 3 3输入:i原创 2015-07-08 20:55:29 · 1988 阅读 · 0 评论 -
判断输入的文本是英文还是德文
//输入包括多个行数,首先给出整数N(1#includeusing namespace std;void main(){ int n; cin>>n; if(n10000) return ; char str[100]; int num_s=0; int num_t=0; gets(str); while(n) { in原创 2015-07-08 20:56:18 · 1570 阅读 · 0 评论 -
出牌,用程序判断手中的牌是否能够压过对方出牌
//规则:出牌牌型有5种 //牌只有1到9,手里拿着已经排好序的牌a,对方出牌b,用程序判断手中牌是否能够压过对方出牌。 //[1]一张 如4 则5...9可压过 //[2]两张 如44 则55,66,77,...,99可压过 //[3]三张 如444 规则如[2] //[4]四张 如4444 规则如[2] //[5]五张 牌型只有12345 23456 345原创 2015-07-08 20:58:57 · 2479 阅读 · 0 评论 -
判断我国公民的身份证是否合法
//我国公民的身份证号码特点如下: //1、 长度为18位;//2、 第1~17位只能为数字;//3、 第18位可以是数字或者小写英文字母x。//4、 身份证号码的第7~14位表示持有人生日的年、月、日信息。//例如:511002198808080111或51100219880808011x。//请实现身份证号码合法性判断的函数。除满原创 2015-07-08 21:02:22 · 645 阅读 · 0 评论 -
求整数的Root:给定正整数,求每位数字之和;如果和不是一位数,则重复
//求整数的Root:给定正整数,求每位数字之和;如果和不是一位数,则重复//用递归求解数字基#includeusing namespace std;int sumnums(int n){ if(n return n; int sum=0; while(n) { sum+=n%10; n/=10; } return sumnum原创 2015-07-08 21:04:32 · 290 阅读 · 0 评论 -
如果统计的个数相同,则按照ASII码由小到大排序输出 。如果有其他字符,则对这些字符不用进行统计。
//如果统计的个数相同,则按照ASII码由小到大排序输出 。如果有其他字符,则对这些字符不用进行统计。//实现以下接口://输入一个字符串,对字符中的各个英文字符,数字,空格进行统计(可反复调用)//按照统计个数由多到少输出统计结果,如果统计的个数相同,则按照ASII码由小到大排序输出//清空目前的统计结果,重新统计//调用者会保证://输入的字符串以‘\0’结尾。原创 2015-07-09 11:32:48 · 2554 阅读 · 0 评论