我将数字列表1-100分成2个字节的文件。然后,我注意到每个奇数btw 11-99需要2个文件,即4个字节,而每个偶数btw 11-99需要1个文件,2个字节。一个文件足够数字btw 1-10。您可以在下面确认这一发现。
你怎么解释这个发现?
我做了什么?
将数字保存到文件中,例如在VIM中:
:%!python -c“for i in range(1,100):print i”
:瓦特! list_0_100
使用Coreutils中的GNU Split-command将文件拆分为2个字节的文件:
$ split -b2 -d list_0_100
发现:每个奇数btw 11-99只需要两个文件,即4字节。相反,每个偶数btw 11-99需要一个文件,即2bytes:
$ head x*
==> x07 <==
8
==> x08 <==
9
==> x09 <==
10
==> x10 <==
1
==> x11 <==
1
==> x12 <==
12
==> x13 <==
1
==> x14 <==
3
==> x15 <==
14
==> x16 <==
1
==> x17 <==
5
答案 0 :(得分:3)
每个大于9的数字需要三个字节(每个数字一个字节,新行一个字节)。编写_代替新行字符(用于可见性),你有这个:
10_11_12_13_14
分手后:
10 _1 1_ 12 _1 3_ 14
偶数恰好位于一个文件中,但奇数被分成两个文件。