PY&PHP 2025淘宝 [ 许心愿,分25亿 ] “一笔连福” 活动游戏攻略~

查看 180|回复 20
作者:fishiss   
年关将近,打开淘宝看未到货快递状态,看到首页有许愿淘彩头分
[color=]25亿活动
,摸鱼闲着也是闲着,于是乎点进去看了下,系统弹出一笔连福;
玩了两把,总差一两个,于是乎拿出了excel 模拟格子数画了起来;


二维结果.png (13.49 KB, 下载次数: 0)
下载附件
2025-1-22 14:33 上传

Excel 中思考了“片刻”(很久)后,果断祭出了python大法:
1. 定义给定的二维矩阵
[color=]matrix
和一个空列表
[color=]max_path
来存储最长路径。
2. 函数接受当前位置的坐标
[color=](x, y)
和当前路径
[color=]path
作为参数。
3. 检查当前位置是否越界、是否为空或是否已经在路径中,如果是,则返回。
4. 将当前位置添加到新路径 new_path 中。
5. 如果当前位置是
[color=]'B6'
,则检查新路径是否比当前最大路径长,如果是,则更新最大路径。
6. 然后递归地向四个方向(上、下、左、右)继续搜索


image.png (87.09 KB, 下载次数: 0)
下载附件
2025-1-22 14:44 上传

python没有让我失望,输出了我期望的结果:['E1', 'E2', 'E3', 'E4', 'E5', 'E6', 'D6', 'D5', 'C5', 'C4', 'D4', 'D3', 'C3', 'C2', 'D2', 'D1', 'C1', 'B1', 'A1', 'A2', 'A3', 'B3', 'B4', 'A4', 'A5', 'A6', 'B6']


4.jpg (210.37 KB, 下载次数: 0)
下载附件
2025-1-22 14:33 上传



1.jpg (160.97 KB, 下载次数: 0)
下载附件
2025-1-22 14:33 上传



2.jpg (166.97 KB, 下载次数: 0)
下载附件
2025-1-22 14:33 上传



3.jpg (142.04 KB, 下载次数: 0)
下载附件
2025-1-22 14:33 上传

[Python] 纯文本查看 复制代码def dfs(matrix, start, end, missing):
    max_path = []
    rows = len(matrix)
    cols = len(matrix[0])
    start_row = None
    start_col = None
    end_row = None
    end_col = None
    # 查找开始位置和结束位置的坐标
    for i in range(rows):
        for j in range(cols):
            if matrix[j] == start:
                start_row = i
                start_col = j
            if matrix[j] == end:
                end_row = i
                end_col = j
    def helper(x, y, path):
        nonlocal max_path
        if x = rows or y = cols or matrix[x][y] in missing or matrix[x][y] in path:
            return
        new_path = path + [matrix[x][y]]
        if matrix[x][y] == end:
            if len(new_path) > len(max_path):
                max_path = new_path
        helper(x - 1, y, new_path)
        helper(x + 1, y, new_path)
        helper(x, y - 1, new_path)
        helper(x, y + 1, new_path)
    helper(start_row, start_col, [])
    return max_path
# 示例矩阵
matrix = [
    ['A1', 'B1', 'C1', 'D1', 'E1'],
    ['A2', 'B2', 'C2', 'D2', 'E2'],
    ['A3', 'B3', 'C3', 'D3', 'E3'],
    ['A4', 'B4', 'C4', 'D4', 'E4'],
    ['A5', 'B5', 'C5', 'D5', 'E5'],
    ['A6', 'B6', 'C6', 'D6', 'E6']
]
start = 'E1'
end = 'B6'
missing = ['B2', 'B5', 'C6']
print(dfs(matrix, start, end, missing))
更新:
由于考虑到部份老伙计没有python运行环境,于是乎移植到了WEB中,
在线地址:xo.canliu.net/other/tb/lj.php


image.png (48.68 KB, 下载次数: 0)
下载附件
2025-1-22 14:40 上传

下载次数, 路径

fishiss
OP
  


Ou7 发表于 2025-1-22 16:12
不显示线呀

改了几版,出了BUG,没验证到位,现已修复~~~
PHP & python  源码下载地址:http://bbs.canliu.net/forum.php?mod=viewthread&tid=2#lastpost
fishiss
OP
  

update  2025-01-25   更新行列自定义,应对游戏更新~~~~~
guodongxv   

厉害,学习了
gao6688tao   

高手在民间呀
littleflowergua   

厉害啊厉害!
chenql   


cooltnt 发表于 2025-1-24 15:16
这题不是人肉就可以搞定的嘛

单纯的试试作弊,结果还是得人肉
renwei3608   

在线版真的好评!!!
tzgtzg8   

确实牛,好玩
UC大法好   

厉害啊 老哥
您需要登录后才可以回帖 登录 | 立即注册