1008红玫瑰数

来源:互联网 发布:dnf决战人工智能数字 编辑:程序博客网 时间:2024/05/06 08:24
#include <stdio.h>/*作者: 厦门理工学院    计算机与信息工程学院 FnLock时间:201711923:51:48 程序描述:3_7红玫瑰数Time Limit:1000MS  Memory Limit:65536KTotal Submit:1838 Accepted:536Description若正整数N的所有因子之和等于N的倍数,则称N为红玫瑰数,如28的因子之和为1+2+4+7+14+28=56=28*2,故28是红玫瑰数,求: (1)[1700]之间最大的红玫瑰数。 (2)[1700]之间有多少个红玫瑰数。 Input无Output第一行输出一个整数,代表[1,700]之间最大的红玫瑰数。 第二行输出一个整数,代表[1,700]之间有多少个红玫瑰数。 第三行从小到大输出[1,700]之间的所有红玫瑰数,每两个数之间用空格隔开。Sample Input无Sample Output67261,,,,Source*/ int main(){    int commonFactor;    int x,y;    int count = 0;    int add=0;     for(x=1;x<=700;x++)    {        for(y=1;y<=x;y++)        {            if(x%y==0)            {                add+=y;            }        }        if(add%x==0)        {            count++;            commonFactor=x;        }        add=0;      }    printf("%d\n",commonFactor);    printf("%d\n",count);    for(x=1;x<=700;x++)    {        for(y=1;y<=x;y++)        {            if(x%y==0)            {                add+=y;            }        }        if(add%x==0)        {            printf("%d ",x);        }        add=0;      }    return 0; }