1015 水仙花数

基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题

水仙花数是指一个 n 位数 ( n >= 3 ),它的每个位上的数字的 n 次幂之和等于它本身。(例如:1^3 + 5^3 + 3^3 = 153)

给出一个整数M,求 >= M的最小的水仙花数。

Input

一个整数M(10 <= M <= 1000)

Output

输出>= M的最小的水仙花数

Input示例

99

Output示例

153

久违的水仙花数,第一发还傻傻的写了发暴力。。

弱数据小打一表是坠吼滴!

附AC代码:

 1 #include<iostream>
 2 using namespace std;
 3
 4 int a[6]={153,370,371,407,1634};
 5
 6 int main(){
 7     int m;
 8     cin>>m;
 9     for(int i=0;i<5;i++){
10         if(a[i]>=m){
11             cout<<a[i]<<endl;
12             break;
13         }
14     }
15     return 0;
16 }
时间: 2024-08-25 15:20:13

1015 水仙花数的相关文章

1015 水仙花数(水题)

1015 水仙花数 基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题 收藏 关注 取消关注 水仙花数是指一个 n 位数 ( n >= 3 ),它的每个位上的数字的 n 次幂之和等于它本身.(例如:1^3 + 5^3 + 3^3 = 153) 给出一个整数M,求 >= M的最小的水仙花数. Input 一个整数M(10 <= M <= 1000) Output 输出>= M的最小的水仙花数 Input示例 99 Output示例 153 从m开始

1015 水仙花数(枚举)

1015 水仙花数 基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题  收藏  关注 水仙花数是指一个 n 位数 ( n >= 3 ),它的每个位上的数字的 n 次幂之和等于它本身.(例如:1^3 + 5^3 + 3^3 = 153) 给出一个整数M,求 >= M的最小的水仙花数. Input 一个整数M(10 <= M <= 1000) Output 输出>= M的最小的水仙花数 Input示例 99 Output示例 153 加油 #inc

[2016-05-10][51nod][1015 水仙花数]

时间:2016-05-10 16:23:29 星期二 题目编号:[2016-05-10][51nod][1015 水仙花数] 题目大意: 水仙花数是指一个 n 位数 ( n >= 3 ),它的每个位上的数字的 n 次幂之和等于它本身.(例如:1^3 + 5^3 + 3^3 = 153), 给出一个整数M,求 >= M的最小的水仙花数. 分析:直接算出前几个水仙花数就好 #include<stdio.h> using namespace std; int main(){ int m;

51Nod 1015 水仙花数

#include <cmath> #include "iostream" using namespace std; int main() { int m; int a[10]={0}; cin>>m; for(int i=m;;i++){ int n=i,len=0,sum=0; while(n!=0) { len++; a[len]=n%10; n=n/10; } for(int j=1;j<=len;j++){ sum+=pow(a[j],len);

筛选水仙花数

//水仙花数--个位的平方+十位的平方+百位的平方(等于==)该三位数 #include<stdio.h>int main(){ int ge,shi,bai; //从100开始筛选for(int i=100;i<1000;i++){ ge=i%10; shi=i/10%10; bai=i/100%10; if(a==ge*ge*ge+shi*shi*shi+bai*bai*bai){//水仙花数的判断条件 //输出 printf("%d\t",i); }} retu

js算法集合(一) 水仙花数 及拓展(自幂数的判断)

js算法集合(一) ★ 最近有些朋友跟我说对js中的一些算法感到很迷惑,知道这个算法到底是怎么回事,但是就是不会用代码把它写出来,这里我跟大家分享一下做水仙花数的算法的思路,并对其扩展到自幂数的算法,希望能对大家有所帮助. 1.验证一个数是否为水仙花数 ①要写水仙花数的算法,我们首先来了解一下什么是水仙花数,水仙花数是指一个 3位正整数 ,它的每个位上的数字的 3次幂之和等于它本身.(例如:1^3 + 5^3+ 3^3 = 153): ②了解了什么是水仙花数我们就开始分析该怎么下手.通过定义来看

51NOD 1016 水仙花数 V2(打表)

传送门 水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身.(例如:1^3 + 5^3 + 3^3 = 153,1634 = 1^4 + 6^4 + 3^4 + 4^4). 给出一个整数M,求 >= M的最小的水仙花数. Input 一个整数M(10 <= M <= 10^60) Output 输出>= M的最小的水仙花数,如果没有符合条件的水仙花数,则输出:No Solution Input示例 300 Output示例 370 解题思路:

水仙花数

描述 请判断一个数是不是水仙花数.其中水仙花数定义各个位数立方和等于它本身的三位数. 输入 有多组测试数据,每组测试数据以包含一个整数n(100<=n<1000) 输入0表示程序输入结束. 输出 如果n是水仙花数就输出Yes 否则输出No 样例输入 153 154 0 样例输出 Yes No 1 #include <stdio.h> 2 3 int main(){ 4 int number; 5 int sum; 6 int temp; 7 8 while(1){ 9 scanf(

如何用C#寻找100到999的所有水仙花数?

首先解释一下何为水仙花数:水仙花数只是自幂数的一种,严格来说是三位数的个位.十位.百位的3次幂数相加等于原来的数字,称为水仙花数.(例如:1^3 + 5^3+ 3^3 = 153) 那么如何通过C#语句来解决这个问题呢? 分析:想要找到百位的水仙花数,要解决的问题由两个,第一个是如何让计算机正确分离出百位数的个位.十位.百位的数字.第二个是如何将其不断循环让100到999都能经过检验. 第一个问题:将这个数值类型定义为整型int(这种数据类型的数字是没有小数点的) 最高位数字--对100整除,则