zoukankan      html  css  js  c++  java
  • PATA1096 Consecutive Factors

    这道题一开始比较难想,因为感觉情况有很多无法比较存储。看了答案才知道用的是很自然的枚举,从2开始进行枚举,判断长度,选出最长的输出。前几个数字比较容易出错2,4,8,7,14这些,整体难度不算太大。

    #include<cstdio>
    #include<math.h>
    #include<algorithm>
    typedef long long ll;
    using namespace std;
    int main()
    {
        ll n;
        scanf("%lld", &n);
        int i, j;
        int anslen = 0;
        int temp = 1;
        ll sqr = (ll)sqrt(n);
        int st, ed;
        for (i = 2; i <= sqr ; i++)
        {
            temp = 1;
            j = i;
            while (1)
            {
                temp *= j;
                if (n%temp != 0)
                {
                    break;
                }
                else if (j - i + 1 > anslen)
                {
                    anslen = j - i + 1;
                    st = i;
                    ed = j;
                }
                j++;
            }
        }
        if (anslen == 0)
        {
            printf("1
    %lld
    ", n);
        }
        else
        {
            printf("%d
    ", anslen);
            for (i = 0; i < anslen; i++)
            {
                if (i != anslen - 1)
                {
                    printf("%d*", st);
                    st++;
                }
                else
                    printf("%d
    ", st);
            }
        }
        //printf("
    ");
    }
  • 相关阅读:
    networkX用法整
    在人生路上对我影响最大的三位老师
    介绍自己
    介绍自己
    自我介绍
    打印沙漏1
    介绍自己
    对我影响最大的三位老师
    人生路上影响对我最大的三位老师
    1.自我介绍
  • 原文地址:https://www.cnblogs.com/legendcong/p/10597558.html
Copyright © 2011-2022 走看看