gpt4 book ai didi

python - 从件号获取位置id的算法

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:08:01 26 4
gpt4 key购买 nike

我将用一个例子来描述有问题的算法:

我有一 block ,假设 block 号 7

我有一个带有 id 的 4 x 4 大小的拼图

00 01 02 03
10 11 12 13
20 21 22 23
30 31 32 33

我需要确定 block 7 的正确位置

位置将是 12

我正在用 Python 编写此代码,我认为我可以使用强力法。我试过计数并到达我需要的位置。

有什么关于简单算法的想法吗?由于我使用的是遗留代码,所以输出必须相同。

最佳答案

修订

使用取模和除法运算求出 x 和 y 坐标piecenumber/columns 的整数是 x 坐标piecenumber%columns 的整数是 y 坐标 #i.e.件号/列的其余部分

注意:请记住,python 中的行和列以 0 而不是 1 开头。因此第三行实际上是行号 2。坐标 0,0 中的图 block 是数字 1,因此您从 y 坐标中减去 1。因此你的算法是这样的:

valueyouwant=grid[tilenumber/numberofcolumns][tilenumber%numberofcolumns-1]

即6x7 网格上的第 34 个图 block =

34/6 =5 (ignore remainder)
34%6 =4 -1 = 3

x=5
y=3

00 01 02 03 04 05
10 11 12 13 14 15
20 21 22 23 24 25
30 31 32 33 34 35
40 41 42 43 44 45
50 51 52 53 54 55
60 61 62 63 64 65

Answer is 53

或者以你为例:

piecenum=7
row=piecenum/4
column=piecenum%4-1
value you want = puzzle[row][column]

关于python - 从件号获取位置id的算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23327230/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com