华为机试—回文数判断

判断一个整型数是否为“回文数”,如1221,232,5。

#include <iostream>
using namespace std;  

void isHuiwen(int number)
{
    int n = 0;//余数.
	int m = number;
    while(m != 0)
    {
        n = n*10 + m %10;  //number的最低位变为n的最高位
        m  = m /10;
    }  

    if(n==number)
        cout << "yes" << endl;
    else
        cout << "no" << endl;
}  

int main()
{
    int number;
    while(cin >> number)
        isHuiwen(number);
    return 0;
} 

时间: 2024-10-06 06:04:01

华为机试—回文数判断的相关文章

华为机试—回文字符串

给出一个长度不超过1000的字符串,判断它是不是回文(顺读,逆读均相同)的. #include <iostream> #include <cstring> using namespace std; int huiwen(char *a){ int len = strlen(a); int i,j=len-1; for(i=0;i<len/2;i++,j--){ if(a[i]!=a[j]){ return 0; } } return 1; } int main(){ char

[小米]2015小米校招之回文数判断

[题目] 大家对回文串不陌生吧?一个字符串从前看和从后看如果一样的话,就是回文串,比如"上海自来水来自海上"就是一个回文串.现在我们的问题来了,把一个数字看成字符串,问它是不是一个回文数?时间复杂度和空间复杂度越低的算法,得分越高. c++: bool isPalindromeNumber(long num); java: boolean isPalindromeNumber(long num); [代码] #include <iostream> using namespa

回文数判断函数

#include <stdio.h>int f(int n)//判断是否是回文数,是返回1,否则返回0{ int t=0,m=n; while(m)//如果m不等于0,执行下面循环,否则跳出循环 (求这个数各位上数字反向排列的数 ) { t*=10; t+=m%10; m/=10; } return t==n;//如果这个数各位数字反向排列所得数依然等于该数,该数就是回文数 }

算法之回文数判断

所谓回文字符 串就是指正读反读均相同的字符序列,如“席主席”.“记书记”.“aha”和“ahaha”均是回 文,但“ahah”不是回文. 通过栈这个数据结构我们将很容易判断一个字符串是否为回文. 1 // 4. 判断回文字符串 2 char a[9], s[9]; 3 int i, len, mid, next, top; 4 5 gets(a); // 读入一行字符串 6 // a = "qwerewq"; 7 len = strlen(a); 8 mid = len / 2 - 1

华为机试—寻找丑数(由浅入深优化至20ms)

题目描述: 把只包含因子2.3和5的数称作丑数(Ugly Number).例如6.8都是丑数,但14不是,因为它包含因子7. 习惯上我们把1当做是第一个丑数.求按从小到大的顺序的第N个丑数. 输入: 输入包括一个整数N(1<=N<=1500). 输出: 可能有多组测试数据,对于每组数据, 输出第N个丑数. 样例输入: 3 样例输出: 3 所谓一个数m是另一个数n的因子,是指n能被m整除,也就是n % m == 0.根据丑数的定义,丑数只能被2.3和5整除.也就是说如果一个数如果它能被2整除,我

华为机试—寻找丑数 &amp;&amp; 九度OJ 1214

题目1214:丑数 时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:1733 解决:771 题目描述: 把只包含因子2.3和5的数称作丑数(Ugly Number).例如6.8都是丑数,但14不是,因为它包含因子7. 习惯上我们把1当做是第一个丑数.求按从小到大的顺序的第N个丑数. 输入: 输入包括一个整数N(1<=N<=1500). 输出: 可能有多组测试数据,对于每组数据, 输出第N个丑数. 样例输入: 3 样例输出: 3 #include<iostream> #in

华为机试-自守数

题目描述自守数是指一个数的平方的尾数等于该数自身的自然数.例如:25^2 = 625,76^2 = 5776,9376^2 = 87909376.请求出n以内的自守数的个数 接口说明 /*功能: 求出n以内的自守数的个数 输入参数:int n返回值:n以内自守数的数量.*/ public static int CalcAutomorphicNumbers( int n){/*在这里实现功能*/return 0;} 输入描述:int型整数输出描述:n以内自守数的数量.示例1输入 2000输出 8

2015华为机试——高次方数的尾数

题目描述: 求解M的N次方的最后三位数(M,N均大于10). 接口说明 原型: int GetLast3DigitsOfMN(int M, int N); 输入参数: int M:M > 10 int N:N > 10 返回值: M的N次方的最后三位数 解题思路: 思路一:先求M的N次方,然后M^N%1000求最后三位数,但是M的N次方很有可能会溢出,导致输出结果异常或错误. 思路二:思路一不行的话,我们得找到他对应的等效方法,M每乘M就对1000求余,其最后三位数是等效的. 代码如下: pu

回文数判断

#include<iostream> using namespace std; void is_HuiWenShu(int c) { int n = 0; int m = c; while (m != 0) { n = n * 10 + m%10; m = m / 10; } if (n == c) cout << "yes" << endl; else cout << "no" << endl; } in