美文网首页
算法问题讲解

算法问题讲解

作者: nimw | 来源:发表于2021-04-10 12:23 被阅读0次

最小路径覆盖

  1. 路径数(点不重复)= 有向图中的总边数 - 二分图最大匹配数
  2. 将有向图变成了一个二分图
  3. 匈牙利算法计算最大匹配数
    参考: 最小路径覆盖问题(网络流24题)二分图的最大匹配、完美匹配和匈牙利算法

最大公约数

  1. 辗转相除法求最大公约数
    m对n求余为a, 若a不等于0,则 m = n, n = a, 继续求余,否则 n 为最大公约数(m > n)。

序列统计

  1. m = R - L + 1
  2. 问题等价于,从 [1, m]中选择n个数(可重复)的方案数。
  3. 数学推导等于C(m + n, m) - 1
  4. 使用Lucas定理计算
    参考:「BZOJ 4403」序列统计 - 组合数

帐篷分配问题

  1. Ai表示第i个帐篷的人数,ave表示平均每个帐篷人数。Ci=Ai-ave。
  2. |X1| + |X1-C1| + |X1-C2| + ……+ |X1-Cn-1|要尽量小
  3. 注意到|X1-Ci|的几何意义是数轴上的点X1到Ci的距离,所以问题变成了:给定数轴上的n个点,找出一个到他们的距离之和尽量小的点,而这个点就是这些数中的中位数
    参考: AcWing 122. 糖果传递

相关文章

  • 算法问题讲解

    最小路径覆盖[https://judge.fineres.com/problem/43] 路径数(点不重复)= 有...

  • 大数据时代的算法:机器学习、人工智能及其典型实例

    编辑推荐: 面向实际:针对现实中的问题,给出对应算法 底层讲解:详细讲解了算法的设计思路,体会大师的思想 涵盖面广...

  • LeetCode问题图解-2

    本文准备讲解1个算法编程问题, 这个算法编程问题来自LeetCode平台和LintCode平台。不了解.LeetC...

  • LeetCode问题图解-1

    本文准备讲解1个算法编程问题, 这个算法编程问题来自LeetCode平台。不了解.LeetCode平台的读者可以...

  • LintCode问题图解-1

    本文准备讲解1个简单的算法编程问题, 这个算法编程问题来自LintCode平台。不了解.LintCode平台的读...

  • LintCode问题图解-61

    本文准备讲解1个简单的算法编程问题, 这个算法编程问题来自LintCode平台。不了解.LintCode平台的读者...

  • LeetCode问题图解-7

    本文准备讲解1个简单的算法编程问题, 这个算法编程问题来自LeetCode平台。不了解.LeetCode平台的读者...

  • LintCode问题图解-49

    本文准备讲解1个算法编程问题, 这个算法编程问题来自LintCode平台。不了解.LintCode平台的读者可以阅...

  • LintCode问题图解-52

    本文准备讲解1个算法编程问题, 这个算法编程问题来自LintCode平台。不了解.LintCode平台的读者可以阅...

  • LintCode问题图解-56

    本文准备讲解1个简单的算法编程问题, 这个算法编程问题来自LintCode平台。不了解.LintCode平台的读者...

网友评论

      本文标题:算法问题讲解

      本文链接:https://www.haomeiwen.com/subject/dengkltx.html