zoukankan      html  css  js  c++  java
  • 之江学院第0届校赛 qwb去面试 (找规律)

    Description

    某一天,qwb去WCfun面试,面试官问了他一个问题:把一个正整数n拆分成若干个正整数的和,请求出这些数乘积的最大值。

    qwb比较猥琐,借故上厕所偷偷上网求助,聪明的你能帮助他吗?

    Input

    第一行为一个正整数T.(T<=100000)

    接下来T行,每行一个正整数n(n<=1e9),意义如题目所述。

    Output

    每一行输出一个整数,表示乘积的最大值,由于答案可能很大,请将答案对109+7取模后输出。

    Sample Input

    2
    2
    5
    

    Sample Output

    2
    6
    

    HINT

    2=2

    5=2+3

    分析:

    很容易看出分成2和3最好,并且6=2+2+2=3+3,222=8,3*3=9,说明尽量分成3.

    代码:

    #include<iostream>
    #include<stdio.h>
    #include<string.h>
    #define mod 1000000007
    using namespace std;
    int main()
    {
        int T,n,ans,op;
        scanf("%d",&T);
        while(T--)
        {
            scanf("%d",&n);
            ans=1;
            op=n/3;
            n=n-op*3;
            for(int i=1; i<=op; i++)
                ans=(ans*3)%mod;
            op=n/2;
            for(int i=1; i<=op; i++)
                ans=(ans*2)%mod;
            printf("%d
    ",ans);
        }
        return 0;
    }
  • 相关阅读:
    Odoo Documentation : Fields
    Odoo models.py BaseModel
    Odoo Documentation : Environment
    Odoo Documentation : Recordsets
    Odoo中使用的部分表名及用途
    Odoo启动过程
    6779. Can you answer these queries VII
    1874 素数和最大
    3150 Pibonacci数
    2817 Tangent的愤怒
  • 原文地址:https://www.cnblogs.com/cmmdc/p/6940992.html
Copyright © 2011-2022 走看看