求助蓝桥杯的题
查看原帖
求助蓝桥杯的题
981751
huangyanjun123456楼主2023/5/27 20:16
四叶玫瑰数是指一个四位数,其各位上的数字的四次方之和等于本身。
给定两个正整数N和M请将N~M (1N<M<1000000)之间(含N和M)的四叶玫瑰数按从小到大的顺序输出。
例如:N=1234,M-2345时,有一个四叶玫瑰数故输出1634.因为14 + 6^4 + 34 +44 =1634,
1634。
输入描述
第一行输入两个正整数N、M (1SN<M1000000)
输出描述
输出一行,包含若干个用一个空格隔开的正整数,表示N~M之间的四叶玫瑰数按从小到大的顺序的输出结果
注意:
题目数据保证给定的N~M范围内至少有一个四叶玫瑰数
样例输入
1234 2345
样例输出
1634

下面是我的代码

#include <bits/stdc++.h>
using namespace std;
int main() {
    int n,m,t,digit,a[5]={},h=1,t2=0;
    cin>>n>>m;
    for(int i=n;i<=m;i++){
        t2=i;
        while(t!=0){
       		digit=t2%10;
        	t2=t2/10;
      	  	a[h]=t2;
       		h++;
   		}
        if(a[1]*a[1]*a[1]*a[1]+a[2]*a[2]*a[2]*a[2]+a[3]*a[3]*a[3]*a[3]+a[4]*a[4]*a[4]*a[4]==i){
            cout<<i<<" ";
        }
    }
    return 0; 
}
2023/5/27 20:16
加载中...