数毒吧 关注:333贴子:2,197
  • 9回复贴,共1

标准、变型数独下单元格坐标的描述规范(rcb规范)

只看楼主收藏回复

为了以下内容叙述方便,将采用rcb规范描述。
Part 1 标准数独
1-1 基础描述
标准数独之中,由行和列的位置瞄准单元格坐标,用字母r表示行,c表示列,b表示所在宫。一般来说,b(宫)不描述,而强调的时候可以描述。但描述顺序必须以r、c、b顺序罗列所在位置。例如:
r1c2,表示第1行第2列(第1行第2格)。
r1c2b1,表示第1行第2列(第1行第2格),当前单元格位于第1宫。
正则表达式:r[1-9]c[1-9](b[1-9])?
1-2 多格描述
如果要描述两个或更多单元格,则需要大括号描述,且单元格之间使用逗号隔开。例如:
{r1c1, r1c2, r1c3},表示第1行的第1、2、3个单元格。
正则表达式:\{r[1-9]c[1-9](b[1-9])?(, r[1-9]c[1-9](b[1-9])?)*\}
1-3 简化
如果单元格有同一个r、c或b标签,则不需要使用大括号,而可以采用简化。例如:
{r1c1, r1c2, r1c3}可以简写为r1c123。
{r3c7, r4c7, r6c7, r7c7}可以简写为r3467c7。
{r1c1, r1c2, r2c4, r2c5}可以简写为{r1c12, r2c45}。
正则表达式:\{r[1-9]+c[1-9]+(b[1-9]+)?(, r[1-9]+c[1-9]+(b[1-9]+)?)*\}


IP属地:北京1楼2018-07-25 17:05回复
    Part 2 对角线数独
    2-1 基础描述
    对角线数独则多出对角线的限制。对角线分为正反对角线两种(一般使用撇捺称呼比较容易理解)。对角线则使用斜杠作为区分。例如:
    D/3,表示撇对角线从上到下第3格(即r3c7)。
    正则表达式:D[\/\\][1-9]
    其他缩写方式和标准数独一致。


    IP属地:北京2楼2018-07-25 17:11
    回复
      Part 3 锯齿数独
      3-1 基础描述
      锯齿数独的锯齿宫比较难使用文本描述,所以一般而言都是通过在图上直接描线来叙述,而必须使用文本描述的时候,则需要先写出b标签,然后后面罗列出当前宫的所有单元格坐标。例如:
      b{r1c3456, r2c67, r3c78}。
      不能单纯使用基础的数字1到9来描述其位置。
      正则表达式:b\{r[1-9]+c[1-9]+(b[1-9]+)?(, r[1-9]+c[1-9]+(b[1-9]+)?)*\}
      其他描述,诸如所在的单元格的坐标,和标准数独一致。


      IP属地:北京3楼2018-07-25 17:16
      回复
        围观大佬


        IP属地:江苏来自Android客户端4楼2018-07-25 17:19
        回复
          Part 4 窗口数独
          窗口数独因为窗口位置比较规范,而且具有隐藏的额外区域(潜规则),所以有特别的描述方式规则。
          4-1 基础描述
          将窗口宫按照左上、右上、左下、右下的方式描述为w1到w4(w取自window之意),而在隐藏额外区域下,则描述为:
          w5:{r234c159};
          w6:{r678c159};
          w7:{r159c234};
          w8:{r159c678};
          w9:{r159c159}。
          则r1c3(r1c3b1)又可以描述为r1c3w7。
          顺序需为r、c、b/w标签的顺序描述。
          正则表达式:r[1-9]c[1-9](w[1-9])?


          IP属地:北京5楼2018-07-25 17:22
          回复
            Part 5 杀手数独
            5-1 虚线框描述
            杀手数独有虚线框的描述,则除了要描述单元格的集合,也要描述其和值。
            杀手数独和其他数独的描述有一些不一致,它不需要标签,只需要罗列虚线框,然后写出单元格总和值和单元格数即可,然后使用斜杠“/”分隔单元格数和总和。例如:
            24/4{r1c234, r2c4}或{r1c234, r2c4}24/4,表示有{r1c234, r2c4}这4格构成的虚线框,其和值为24。
            最后可以在最前面加上cage标签(也可以不加),即类似于cage{r1c234, r2c4}24/4的写法。
            5-2 分裂框描述
            分裂框是通过虚线框的和差关系,得到一组新单元格内的和值结果,进而标注出来的部分。
            分裂框和虚线框的描述方式一致,但一定不加标签cage。在杀手数独软件制作的时候,如果全部不添加cage,则全部默认为分裂框,加上cage可表示为虚线框。


            IP属地:北京6楼2018-07-25 17:29
            回复(1)
              Part 6 额外区域数独
              额外区域数独则不好描述额外区域部分,所以可以使用锯齿数独的描述方式,但b标签要改为xg(取extra group的x和g字母),例如:
              xg{r12c5, r23c6, r34c7, r45c8, r5c9},表示又这样九格构成的额外区域。
              正则表达式:xg\{r[1-9]+c[1-9]+(b[1-9]+)?(, r[1-9]+c[1-9]+(b[1-9]+)?)*\}


              IP属地:北京7楼2018-07-25 17:35
              回复
                膜拜围观


                来自Android客户端8楼2018-07-30 12:30
                回复
                  大佬,从你这发现我连小白都算不上


                  IP属地:河北来自Android客户端9楼2019-12-15 17:17
                  回复