爱丽丝·玛格特罗依德

Posted 【對策局】

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了爱丽丝·玛格特罗依德相关的知识,希望对你有一定的参考价值。

【题目描述】

爱丽丝·玛格特罗依德有n(0 < n < 10^5)点魔法值,每召唤出一个『上海人形』就要消耗x点魔法,最后,它们造成的威力就是每个人形所消耗的魔法值的总积。

【输入描述】

输入一个数n。

【输出描述】

输出一个数表示最大威力。

【样例输入】

10

【样例输出】

36

【数据范围及提示】

样例中,10=2+2+3+3,36=2*2*3*3。

源代码:

#include<cstdio>
#include<cstdlib>
int n,Length=1,Ans[60000];
int Get(int T) //高精度乘法。
{
    int i[60000];
    i[1]=0;
    for (int a=1;a<=Length;a++)
    {
        Ans[a]*=T;
        Ans[a]+=i[a];
        i[a+1]=Ans[a]/10;
        Ans[a]%=10;
    }
    if (i[Length+1])
    {
        Length++;
        Ans[Length]=i[Length];
    }
}
void Solve()
{
    while (n)
      if (n==4)
      {
        n-=4;
        Get(4);
      }
      else
        if (n==2)
        {
            n-=2;
            Get(2);
        }
        else
          if (n>=3)
          {
            n-=3;
            Get(3);
          }
          else
            if (n==1)
            {
                printf("1");
                exit(0);
            }
}
int main()
{
    scanf("%d",&n);
    Ans[1]=1;
    Solve();
    for (int a=Length;a>0;a--)
      printf("%d",Ans[a]);
    return 0;
}

/*
    解题思路:
        一道红果果的数学奥赛题。尽量分成3,不足的就分成2。
*/

以上是关于爱丽丝·玛格特罗依德的主要内容,如果未能解决你的问题,请参考以下文章

codevs 2803 爱丽丝·玛格特罗依德

魔理沙的烟火制造

国内长期出售正版印度特罗凯销售热线15701367793

玛格南摄影师Lua Ribeira:用OPPO诠释“时差”

Leetcode202 快乐数 佛洛依德循环

treecnt 算法马拉松20(告别美国大选及卡斯特罗)