leetcode526 优美的排列

回溯水题

代码:

class Solution {int[] res;int cnt = 0;public void swap(int i, int j){int tmp = res[i];res[i] = res[j];res[j] = tmp; }public void backTrack(int pos, int n){if(pos == n){cnt++;}else{for(int i = pos;i < n;i++){swap(i,pos);if(res[pos]%(pos+1)==0 || (pos+1)%res[pos]==0){backTrack(pos+1, n);}swap(i, pos);}}}public int countArrangement(int n) {res = new int[n];for(int i = 0;i < n;i++){res[i] = i+1;}backTrack(0, n);return cnt;}
}

46ms 35MB

leetcode526 优美的排列相关推荐

  1. Leetcode 526.优美的排列 二进制状压DP

    题目链接:传送门 假设有从 1 到 N 的 N 个整数,如果从这 N 个数字中成功构造出一个数组,使得数组的第 i 位 (1 <= i <= N) 满足如下两个条件中的一个,我们就称这个数 ...

  2. LeetCode 526. 优美的排列(回溯)

    1. 题目 假设有从 1 到 N 的 N 个整数,如果从这 N 个数字中成功构造出一个数组,使得数组的第 i 位 (1 <= i <= N) 满足如下两个条件中的一个,我们就称这个数组为一 ...

  3. 递归-力扣-526. 优美的排列

    题目链接 优美的排列 假设有从 1 到 n 的 n 个整数.用这些整数构造一个数组 perm(下标从 1 开始),只要满足下述条件 之一 ,该数组就是一个 优美的排列 : perm[i] 能够被 i ...

  4. 526. 优美的排列

    假设有从 1 到 N 的 N 个整数,如果从这 N 个数字中成功构造出一个数组,使得数组的第 i 位 (1 <= i <= N) 满足如下两个条件中的一个,我们就称这个数组为一个优美的排列 ...

  5. Java实现 LeetCode 526 优美的排列(DFS)

    526. 优美的排列 假设有从 1 到 N 的 N 个整数,如果从这 N 个数字中成功构造出一个数组,使得数组的第 i 位 (1 <= i <= N) 满足如下两个条件中的一个,我们就称这 ...

  6. Java实现 LeetCode 667 优美的排列 II(暴力)

    667. 优美的排列 II 给定两个整数 n 和 k,你需要实现一个数组,这个数组包含从 1 到 n 的 n 个不同整数,同时满足以下条件: ① 如果这个数组是 [a1, a2, a3, - , an ...

  7. 力扣 -- 526. 优美的排列

    一.题目描述 假设有从 1 到 N 的 N 个整数,如果从这 N 个数字中成功构造出一个数组,使得数组的第 i 位 (1 <= i <= N) 满足如下两个条件中的一个,我们就称这个数组为 ...

  8. leetcode 667. Beautiful Arrangement II | 667. 优美的排列 II(Java)

    题目 https://leetcode.com/problems/beautiful-arrangement-ii/ 题解 偏智力题,评论区有人说,A typical question testing ...

  9. leetcode 526. Beautiful Arrangement | 526. 优美的排列(回溯)

    题目 https://leetcode.com/problems/beautiful-arrangement/ 题解 首先分析,全排列一个一个试的话(如下图),时间复杂度O(n^2),当n=15时,总 ...

最新文章

  1. Python最抢手、Go最有前途,7000位程序员揭秘2019软件开发现状
  2. 如图两道面试题,顺便深入线程池,并连环17问
  3. 服务器 新文件病毒扫描,部署 Seafile 专业版服务器
  4. Web APi之控制器选择Action方法过程(九)
  5. 华为2288H V5服务器 RAID操作
  6. python建立数据库并序列化_python之数据的序列化
  7. 牛客练习赛38 E 出题人的数组 2018ccpc桂林A题 贪心
  8. hdu 2602 Bone Collector(01背包)模板
  9. 如何调整SAP HANA studio里的字体大小
  10. Ajax get请求示例
  11. Calibre修改保存电子书为中文
  12. FZU 1054 阅读顺序
  13. 华为A1路由器虚拟服务器,华为a1路由器怎么设置
  14. 独立站怎么做SEO?
  15. MacBook Air如何清理缓存
  16. Mac-----Mac安装虚拟机
  17. 看不见的竞争 之 把握意见领袖
  18. android 禁止媒体扫描,Android通过.nomedia文件禁止多媒体库扫描指定文件夹下的多媒体文件...
  19. JS_微信公众号开发调用扫码支付功能
  20. 多传感器融合及其应用

热门文章

  1. Android9.0 Wifi模块Framework层分析
  2. mpvue+mpvueWeUI搭建小程序
  3. 黑发黑眼 hdu2147
  4. 关于下拉刷新你是否真的非常理解还是只会搬砖?附 Android 实例子源代码文件下载地址380个合集...
  5. 冯·诺依曼体系结构(计算机体系结构)
  6. 微信怎么解绑手机号?手把手教你具体操作步骤
  7. DropWizard框架里关于异常统一处理实践
  8. 银河麒麟crontab下班自动关机
  9. JavaScript中事件回顾
  10. 微信授权登录:PC端扫码登录[unionid](二)