无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

今天拿這個騙了女朋友,她以為我很會數(shù)獨(dú)

2021-08-08 21:21 作者:夢想是華爾街只狼  | 我要投稿

import time
t0 = time.time()
class point:
? ?def __init__(self, x, y):
? ? ? ?self.x = x
? ? ? ?self.y = y
? ? ? ?self.available = []
? ? ? ?self.value = 0

def rowNum(p, sudoku):
? ?row = set(sudoku[p.y * 9:(p.y + 1) * 9])
? ?row.remove(0)
? ?return row ?# set type

def colNum(p, sudoku):
? ?col = []
? ?length = len(sudoku)
? ?for i in range(p.x, length, 9):
? ? ? ?col.append(sudoku[i])
? ?col = set(col)
? ?col.remove(0)
? ?return col ?# set type

def blockNum(p, sudoku):
? ?block_x = p.x // 3
? ?block_y = p.y // 3
? ?block = []
? ?start = block_y * 3 * 9 + block_x * 3
? ?for i in range(start, start + 3):
? ? ? ?block.append(sudoku[i])
? ?for i in range(start + 9, start + 9 + 3):
? ? ? ?block.append(sudoku[i])
? ?for i in range(start + 9 + 9, start + 9 + 9 + 3):
? ? ? ?block.append(sudoku[i])
? ?block = set(block)
? ?block.remove(0)
? ?return block ?# set type

def initPoint(sudoku):
? ?pointList = []
? ?length = len(sudoku)
? ?for i in range(length):
? ? ? ?if sudoku[i] == 0:
? ? ? ? ? ?p = point(i % 9, i // 9)
? ? ? ? ? ?for j in range(1, 10):
? ? ? ? ? ? ? ?if j not in rowNum(p, sudoku) and j not in colNum(p, sudoku) and j not in blockNum(p, sudoku):
? ? ? ? ? ? ? ? ? ?p.available.append(j)
? ? ? ? ? ?pointList.append(p)
? ?return pointList

def tryInsert(p, sudoku):
? ?availNum = p.available
? ?for v in availNum:
? ? ? ?p.value = v
? ? ? ?if check(p, sudoku):
? ? ? ? ? ?sudoku[p.y * 9 + p.x] = p.value
? ? ? ? ? ?if len(pointList) <= 0:
? ? ? ? ? ? ? ?t1 = time.time()
? ? ? ? ? ? ? ?useTime = t1 - t0
? ? ? ? ? ? ? ?showSudoku(sudoku)
? ? ? ? ? ? ? ?print('\nuse Time: %f s' % (useTime))
? ? ? ? ? ? ? ?exit()
? ? ? ? ? ?p2 = pointList.pop()
? ? ? ? ? ?tryInsert(p2, sudoku)
? ? ? ? ? ?sudoku[p2.y * 9 + p2.x] = 0
? ? ? ? ? ?sudoku[p.y * 9 + p.x] = 0
? ? ? ? ? ?p2.value = 0
? ? ? ? ? ?pointList.append(p2)
? ? ? ?else:
? ? ? ? ? ?pass

def check(p, sudoku):
? ?if p.value == 0:
? ? ? ?print('not assign value to point p!!')
? ? ? ?return False
? ?if p.value not in rowNum(p, sudoku) and p.value not in colNum(p, sudoku) and p.value not in blockNum(p, sudoku):
? ? ? ?return True
? ?else:
? ? ? ?return False

def showSudoku(sudoku):
? ?for j in range(9):
? ? ? ?for i in range(9):
? ? ? ? ? ?print('%d ' % (sudoku[j * 9 + i]), end='')
? ? ? ?print('')

if __name__ == '__main__':
? ?shudu = [
? ? ? ?0, 0, 0, 0, 6, 5, 8, 0, 0,
? ? ? ?0, 1, 6, 0, 0, 9, 0, 0, 4,
? ? ? ?0, 0, 0, 0, 0, 0, 0, 5, 0,
? ? ? ?0, 0, 8, 0, 0, 0, 0, 6, 0,
? ? ? ?0, 0, 1, 0, 9, 0, 0, 7, 0,
? ? ? ?6, 2, 3, 0, 0, 0, 5, 8, 0,
? ? ? ?0, 6, 0, 7, 0, 0, 0, 1, 0,
? ? ? ?7, 0, 0, 0, 0, 0, 0, 0, 0,
? ? ? ?0, 0, 0, 5, 0, 2, 0, 0, 0,
? ?]
? ?pointList = initPoint(shudu)
? ?showSudoku(shudu)
? ?print('\n')
? ?p = pointList.pop()
? ?tryInsert(p, shudu)

應(yīng)該可以直接運(yùn)行

不過意義不大,畢竟別人拿數(shù)獨(dú)鍛煉腦子的

有空可以枚舉禮包碼玩玩,八的十次方也就那樣,實際上主要廢在交互上

今天拿這個騙了女朋友,她以為我很會數(shù)獨(dú)的評論 (共 條)

分享到微博請遵守國家法律
莫力| 虹口区| 河池市| 交城县| 喀喇沁旗| 虹口区| 吐鲁番市| 观塘区| 大荔县| 安康市| 渭南市| 客服| 阜康市| 会理县| 当阳市| 安吉县| 密云县| 曲松县| 来凤县| 敖汉旗| 安宁市| 兴国县| 布尔津县| 尤溪县| 潜山县| 永丰县| 罗山县| 富民县| 梁平县| 浪卡子县| 商洛市| 阳山县| 凤翔县| 江北区| 襄汾县| 浠水县| 施甸县| 平陆县| 郧西县| 蓬安县| 深水埗区|