提答相关(笔记)

提答相关(笔记)

参考资料(matrix67大牛):http://www.matrix67.com/blog/archives/105

P问题:能在多项式时间内解决的问题。

NP问题:能在多项式时间内判定答案是否正确的问题。

NPC问题:是NP问题,并且所有NP问题都可以规约到这个问题。

NP-Hard问题:将NPC问题变成求最优解问题。

常见的三种提答:

  1. 将一个NPC问题转换成类似于NP-Hard的问题(判定性问题转成最优解问题)。
  2. 让你玩游戏,玩一组优秀的解。
  3. 给出例入例出,让你猜算法,或者给定两个算法,构造能卡掉其中一个算法的输入。

第一类提答

对于规模小的部分分,可以用搜索/状压dp解决。

对于大数据,只能用找规律/用爬山和模拟退火来乱搞了。

爬山的优化方法:可以随机起点。

如何定义爬山中点的相邻点:

  • 交换两个相邻的元素
  • 交换任意两个元素

模拟退火:每次产生一个相邻点,如果这个点更糟糕,定义糟糕程度为k,我们就以一个概率pk接受这个点(p随着时间推移变小),否则一定接受这个点。

第二类提答

用蒙特卡洛树解决(我也不会)

还是乱搞和面向数据编程现实一点吧

第三类提答

这种题型就是考验算法能力。对算法的理解和掌握程度越高越容易得分~

猜你喜欢

转载自www.cnblogs.com/MyNameIsPc/p/9367776.html