鱼C论坛

 找回密码
 立即注册
查看: 2126|回复: 14

[技术交流] Python:每日一题 214

[复制链接]
发表于 2019-3-6 15:40:37 | 显示全部楼层
  1. def test214(str1, n):
  2.     m = [[''] * n for i in range(n)]
  3.     index, turnindex = 0, 0
  4.     turn = [[0, 1], [1, 0], [0, -1], [-1, 0]]
  5.     now = [0, 0]
  6.     for j in range(n * n):
  7.         m[now[0]][now[1]] = str1[index]
  8.         left = [now[i] + turn[turnindex][i] for i in range(2)]
  9.         if left[0] == n or left[1] == n or m[left[0]][left[1]] != '':
  10.             turnindex = (turnindex + 1) % 4
  11.             left = [now[i] + turn[turnindex][i] for i in range(2)]
  12.         now = left
  13.         index = 0 if index == len(str1) - 1 else index + 1
  14.     for ii in m:
  15.         print(ii)
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-9-30 06:57

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表