Architecture 10亿到40亿的总和有多少存储空间

Architecture 10亿到40亿的总和有多少存储空间,architecture,Architecture,受到这个问题的启发 存储一个10亿到40亿数字之和的整数需要多少存储空间 例如,1+2+3+4+5=15。100万到100万的总和=500000500000 是一种算法,它可能有助于您链接的函数,用于描述如何找到第n个数,它被定义为从1到n的n个自然数的总和 将40亿替换为n,得到800000002000000000 表示为位数,可以通过取值的2底对数和四舍五入来计算- CEILLOG80000000000000/log2=63 因此,需要63位的存储。您链接的函数描述了如何找到第n个数,它定义

受到这个问题的启发

存储一个10亿到40亿数字之和的整数需要多少存储空间

例如,1+2+3+4+5=15。100万到100万的总和=500000500000


是一种算法,它可能有助于

您链接的函数,用于描述如何找到第n个数,它被定义为从1到n的n个自然数的总和

将40亿替换为n,得到800000002000000000

表示为位数,可以通过取值的2底对数和四舍五入来计算-

CEILLOG80000000000000/log2=63


因此,需要63位的存储。

您链接的函数描述了如何找到第n个数,它定义为从1到n的n个自然数的总和

In [12]: import math

In [13]: n=4000000000

In [15]: sumn = n*(n+1)/2

In [16]: sumn
Out[16]: 8000000002000000000L

In [24]: math.log(sumn)/math.log(2)
Out[24]: 62.794705708333197
将40亿替换为n,得到800000002000000000

表示为位数,可以通过取值的2底对数和四舍五入来计算-

CEILLOG80000000000000/log2=63

因此,需要63位的存储空间

In [12]: import math

In [13]: n=4000000000

In [15]: sumn = n*(n+1)/2

In [16]: sumn
Out[16]: 8000000002000000000L

In [24]: math.log(sumn)/math.log(2)
Out[24]: 62.794705708333197
答:63位


回答:63位。

如果为整数选择合适的编码,一位就足够了


如果可能需要存储的值超过2^n,则只需要n个以上的位。这里只需要存储一个值。

如果为整数选择合适的编码,一位就足够了


如果可能需要存储的值超过2^n,则只需要n个以上的位。这里只有一个值需要存储。

我不敢相信你在互联网上搜索了从1到100万的所有数字的总和。使用三角形数字标识,甚至是嗯。。。该链接描述了三角形数公式。无论如何,问题不在于价值,而在于存储需求。不是100万到100万,而是10亿到40亿我真不敢相信你在互联网上搜索了100万到100万之间所有数字的总和。使用三角形数字标识,甚至是嗯。。。该链接描述了三角形数公式。无论如何,问题不在于价值,而在于存储需求。不是100万到100万,而是10亿到40亿你是说你可以在一位中存储800000002000000000的值吗?是的。事实上,有无数的编码允许我这样做。好吧,很公平+1您是说您可以在一位中存储8000000020000000000的值吗?是的。事实上,有无数的编码允许我这样做。好吧,很公平+1.