HDOJ 2010 水仙花数
2016-01-06 20:05
316 查看
水仙花数
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 149319 Accepted Submission(s): 42999
[align=left]Problem Description[/align]
春天是鲜花的季节,水仙花就是其中最迷人的代表,数学上有个水仙花数,他是这样定义的:
“水仙花数”是指一个三位数,它的各位数字的立方和等于其本身,比如:153=1^3+5^3+3^3。
现在要求输出所有在m和n范围内的水仙花数。
[align=left]Input[/align]
输入数据有多组,每组占一行,包括两个整数m和n(100<=m<=n<=999)。
[align=left]Output[/align]
对于每个测试实例,要求输出所有在给定范围内的水仙花数,就是说,输出的水仙花数必须大于等于m,并且小于等于n,如果有多个,则要求从小到大排列在一行内输出,之间用一个空格隔开;
如果给定的范围内不存在水仙花数,则输出no;
每个测试实例的输出占一行。
[align=left]Sample Input[/align]
100 120 300 380
[align=left]Sample Output[/align]
no 370 371
杭电的这个题目我看的明明有空格(最后一个数据),原来每空格。用数组存储输出。
AC代码
#include<stdio.h> #include<stdlib.h> #include<math.h> int main() { int m,n,k,min,max; int ge,shi,bai,j; int wqs[1000]; while(scanf("%d%d",&m,&n)!=EOF) { min=m<n? m:n; max=m>n? m:n; k=0; j=0; for(int i=min; i<=max; i++) { ge=i%10; bai=i/100; shi=(i/10)%10; if(i==ge*ge*ge+bai*bai*bai+shi*shi*shi) { wqs[j++]=i; k=1; } } if(k==1) { for(int j1=0; j1<j-1; j1++) printf("%d ",wqs[j1]); printf("%d\n",wqs[j-1]); } if(k==0) printf("no\n"); } return 0; }
错误代码
#include<stdio.h> #include<stdlib.h> #include<math.h> int main() { int m,n,k,min,max; int ge,shi,bai; while(scanf("%d%d",&m,&n)!=EOF) { min=m<n? m:n; max=m>n? m:n; k=0; for(int i=min; i<=max; i++) { //k=0; ge=i%10; bai=i/100; shi=(i/10)%10; if(i==ge*ge*ge+bai*bai*bai+shi*shi*shi) { printf("%d ",i); k=1; } } if(k==1) printf("\n"); if(k==0) printf("no\n"); } return 0; }
(格式错误)
相关文章推荐
- 图形学理论 光照模型
- 解决Ubuntu14.04 LTS中Chrome死机的问题
- 实战中的 Promise 和 Future
- SDL2.0学习笔记——在屏幕上显示一张图片
- 【BS】compilation debug=true targetFramework=4.0 无法识别的属性“targetFramework”
- opencv的实用研究--分析轮廓并寻找边界点
- AdaBoost--从原理到实现
- MFC基础知识
- Python数据类型
- Maven问题集
- UI基础02
- 关于Android中“OnClickLinstener cannot be resolved to a type”的错误
- 数据库
- 学习linux系统的视频(视频中教学使用red hat linux)
- UITableView加载数据
- hdu 2544 最短路
- HttpClient用HttpPost传输中文字符串乱码
- Android Tools集合下载
- MySQL MHA 高可用架构
- 常用正则表达式