zoukankan      html  css  js  c++  java
  • bzoj1263

    题解:

    高精度乘法+数论

    小学数学都学过把

    每次分解成的3越多越好

    很小的时候特判一下

    代码:

    #include<bits/stdc++.h>
    using namespace std;
    int ans[10005],len,n;
    void cf(int x)
    {
        for (int i=1;i<=len;i++)ans[i]*=x;
        for (int i=1;i<=len;i++)
         {
             ans[i+1]+=ans[i]/10;
             ans[i]%=10;
         }
        if (ans[len+1]>0)len++; 
    }
    int main()
    {
        len=1;ans[1]=1;
        scanf("%d",&n);
        for (;n>5;n-=3)cf(3);
        if (n<=4)cf(n);
        if (n==5)cf(6);
        printf("%d
    ",len);
        for (int k=0;len;k++,len--)
         {
             if (k==100)break;
            printf("%d",ans[len]);
         }
    }
  • 相关阅读:
    NYOJ 734
    NYOJ 762
    NYOJ 743
    NYOJ 478
    NYOJ 451
    NYOJ 461
    NYOJ 485
    NYOJ 333
    平均互信息
    ASCII码
  • 原文地址:https://www.cnblogs.com/xuanyiming/p/8044354.html
Copyright © 2011-2022 走看看