leetcode-526 优美的排列
发布时间:2020-12-20 12:48:14 所属栏目:Python 来源:网络整理
导读:leetcode-526 优美的排列 题目描述: 假设有从 1 到 N 的?N?个整数,如果从这?N?个数字中成功构造出一个数组,使得数组的第 i?位 (1 = i = N) 满足如下两个条件中的一个,我们就称这个数组为一个优美的排列。条件:第?i?位的数字能被?i?整除i 能被第 i 位上
leetcode-526 优美的排列题目描述:
class Solution: def countArrangement(self,N: int) -> int: flags = [0]*(N+1) self.res = 0 self.dfs(list(range(N+1)),1,flags) return self.res def dfs(self,nums,index,flags): if len(nums) < index+1: self.res += 1 return for i in range(1,len(nums)): if flags[i]==0 and (index%i == 0 or i%index == 0): flags[i] = 1 self.dfs(nums,index+1,flags) flags[i] = 0 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |