물 문제~HDU 2010 수선화 수 문제 풀이

4026 단어 ACM물 문제HDU
Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 173717    Accepted Submission(s): 49653
Problem Description
봄 은 꽃의 계절 이다.수선화 가 그 중에서 가장 매력 적 인 대표 이다.수학 적 으로 수선화 수가 있다.그 는 이렇게 정의 했다.
'수선화 수'는 세 자릿수 를 말 하 는데 그 숫자 들 의 입방 은 그 자체 와 같다.예 를 들 어 153=1^3+5^3+3^3 이다.
현재 m 와 n 범위 내 에 있 는 모든 수선화 수 를 출력 해 야 합 니 다.
 
Input
입력 데 이 터 는 여러 그룹 이 있 고 각 그룹 은 한 줄 을 차지 하 며 두 개의 정수 m 와 n(100<=m<=n<=999)을 포함한다.
 
Output
모든 테스트 인 스 턴 스 에 대해 주어진 범위 내 에 있 는 모든 수선화 수 를 출력 해 야 합 니 다.즉,수출 하 는 수선화 수 는 m 보다 크 고 n 보다 작 아야 합 니 다.만약 에 여러 개가 있 으 면 작은 줄 에서 큰 줄 로 배열 하여 출력 하고 사 이 를 빈 칸 으로 분리 해 야 합 니 다.
주어진 범위 내 에 수선화 수가 존재 하지 않 으 면 no 를 출력 합 니 다.
모든 테스트 인 스 턴 스 의 출력 이 한 줄 을 차지 합 니 다.
 
Sample Input
 
   
100 120 300 380
 

Sample Output
 
   
no 370 371
 

Author
lcy
 

Source
C语言程序设计练习(二)
 

Recommend

JGShining   |   We have carefully selected several similar problems for you:  2012 2004 2009 2011 2001 


题目怎么说 就怎么做 没想数组 直接暴力 后来想想还是打个表应该会比较好

题意:给两个数m,n 在m,n范围内的数 如果一个数等于个位的三次方+十位的三次方+百位的三次方 则为水仙花数

注意输出格式 空格和换行 第一次提交  Presentation Error

#include 
#include 
#include 
#include 
using namespace std;

int main()
{
	int m,n;
	while(scanf("%d%d",&m,&n) != EOF && m && n)
	{
		if(m > n)
		{
			swap(m,n);
		}
		int a,b,c;
		bool flag = false;
		int count = 0;
		for(int i=m;i<=n;i++)
		{
			a = i % 10;
			b = i / 10 % 10;
			c = i / 100;
			if(pow(a,3) + pow(b,3) + pow(c,3) == i)
			{
				count ++;
				if(count != 1)
				{
					printf(" ");
				}
				printf("%d",i);
				flag = true;
			}
		}
		if(!flag)
		{
			printf("no
"); }else { printf("
"); } } return 0; }

좋은 웹페이지 즐겨찾기