PC28 算法说明

不是把20个号码直接相加,而是先看它们 排在第几位

PC28算法以一期开出的20个Keno号码为输入。号码升序排列后,从指定位置抽取三组数据,分别求和、保留各组和值的末位,再把三个末位数字相加,形成0至27之间的结果。本页把这条计算链完整展开,让公式、位置与案例能够逐项对应。

阅读时请区分“号码本身”和“排序后的位置”。第2位指升序序列中的第二个号码,并不等于号码2。

看懂公式后直接验算

01 / 先排序,再编号

算法读取的是一条有位置的号码序列

一期Keno源数据包含20个从1至80范围内开出的号码。开始计算前,先把这20个号码从小到大排列,并依次标记为第1位、第2位,一直到第20位。原始公布顺序不参与后续取值;真正决定某个号码是否进入某组的,是它在升序序列中的位置。

这一步看似只是整理格式,却是验算中最容易产生偏差的地方。若漏掉一个号码、重复录入一个号码,或没有完成升序排列,后面的所有位置都会错位。与其急着套公式,不如先核对号码总数、排序方向和位置编号,让输入成为一条可以逐格查阅的序列。

Illustrative sequence

教学案例:20个号码升序排列表

位置编号显示在每格左上角
P1 10
P2 13
P3 16
P4 18
P5 23
P6 28
P7 30
P8 33
P9 38
P10 40
P11 43
P12 48
P13 50
P14 53
P15 58
P16 60
P17 63
P18 70
P19 76
P20 80

例如,案例中的第2位是13,第5位是23。公式中的“2、5”描述的是位置,不是要寻找号码2和号码5。

第1位与第20位仍需保留在完整序列中,用于确认排序边界,但它们不会进入三组求和。

02 / 三条位置轨道

从第2位开始,每隔三个位置取一个号码

三组位置呈现出清楚的交错结构:第一组从第2位起步,第二组从第3位起步,第三组从第4位起步;每组都向后跨越三个位置,共取得六个号码。第1位和第20位不参加求和,因此18个中间位置恰好被三组完整覆盖。

位置 1
位置 2
位置 3
位置 4
位置 5
位置 6
位置 7
位置 8
位置 9
位置 10
位置 11
位置 12
位置 13
位置 14
位置 15
位置 16
位置 17
位置 18
位置 19
位置 20

GROUP A

第2、5、8、11、14、17位

第一组从第2位开始,每向后移动三个位置取一次值。其和值写作 P2 + P5 + P8 + P11 + P14 + P17。案例对应号码为13、23、33、43、53、63。

GROUP B

第3、6、9、12、15、18位

第二组把起点后移一格,仍然保持每隔三个位置取值。其和值写作 P3 + P6 + P9 + P12 + P15 + P18。案例对应号码为16、28、38、48、58、70。

GROUP C

第4、7、10、13、16、19位

第三组从第4位开始,覆盖剩余的六个中间位置。其和值写作 P4 + P7 + P10 + P13 + P16 + P19。案例对应号码为18、30、40、50、60、76。

可以把这套取值方式理解为三条平行轨道:三组拥有不同起点,却采用相同的间隔。验算时按组逐项抄写,比一边看位置、一边心算更容易发现漏项。完成一组后,还可以反查该组是否确实包含六个位置。

03 / 只保留和值末位

三组大和值,压缩成三个个位数

每组完成求和后,不把完整和值直接加入最终结果,而是只取十进制表示中的最后一位。和值228留下8,258留下8,274留下4。这与对每组和值取模10等价。

最后再把三个末位数字相加。因为每个末位都只能落在0至9之间,三个数字的最小和是0,最大和是27,因此最终结果自然形成0至27的范围,共28种可能数值。这里的“28”来自结果区间的数量,不是将和值除以28,也不是对最终和再次取末位。

228 → 末位 8
258 → 末位 8
274 → 末位 4
8 + 8 + 4 20

最终结果保留完整的三数之和。本例得到20,不再把20处理成0,也不对其进行额外拆分。

04 / 完整验算案例

从20个号码走到结果20,不省略中间过程

下面使用同一组教学号码,把排序、定位、分组、求和与取末位连续写出。案例的价值不在于最终数字本身,而在于每一项都能返回上方位置表核对。只要输入号码一致、排序一致、位置选择一致,计算过程就应得到相同结果。

输入与排序结果

P1 — P20
1 10
2 13
3 16
4 18
5 23
6 28
7 30
8 33
9 38
10 40
11 43
12 48
13 50
14 53
15 58
16 60
17 63
18 70
19 76
20 80
第一组

P2/5/8/11/14/17

13 + 23 + 33 + 43 + 53 + 63 = 228

读取228的个位,第一组末位为8。

8
第二组

P3/6/9/12/15/18

16 + 28 + 38 + 48 + 58 + 70 = 258

读取258的个位,第二组末位同样为8。

8
第三组

P4/7/10/13/16/19

18 + 30 + 40 + 50 + 60 + 76 = 274

读取274的个位,第三组末位为4。

4

FINAL RESULT

三个末位相加:8 + 8 + 4 = 20

到这里,20个源号码已经经过升序定位、三组抽取和末位压缩,最终得到结果20。若手工结果与记录不一致,宜沿相反方向回查:先看末位是否抄错,再看组内加法,最后核对排序位置与最初输入。

20

用公式概括整条链路

设升序后的20个号码依次为P1至P20。第一组和值为指定六个位置之和,取其个位得到T1;第二、第三组以相同方式得到T2和T3。最终结果R等于T1、T2、T3之和。公式只是压缩表达,实际核对时仍应保留每组的号码清单和完整和值,避免只留下最终数字而失去回溯依据。

算法解释什么,不解释什么

这套方法说明PC28结果如何从公开Keno号码衍生,并允许读者对已经出现的数据进行重复计算。它描述的是确定的转换关系,而不是对下一期结果的推断。历史记录中的大小、单双或具体数值,都建立在计算完成后的结果上;它们不会反过来改变某一期的分组公式。

05 / 从公式继续

选择下一种阅读方式

理解算法之后,可以直接输入号码复算,也可以回到具体期次查看号码、期号与结果如何并列呈现。若关注数据来源,则从Keno源数据对照开始,观察原始20个号码如何进入同一条计算链。

补充阅读:规则与来源