zoukankan      html  css  js  c++  java
  • CF1280E Kirchhoff's Current Loss

    题意

    做法

    考虑一个子电路图\(G\),设得到有效电阻为\(x\),费用为\(f_G(x)\),通过归纳易得\(f_G(x)\)是关于\(x\)的一个一次函数,即\(f_G(x)=k_Gx\)

    考虑电路图\(G\)的若干个子电路图\(G_1,G_2,...,G_n\)

    • 串联:设子电路图的系数分别为\(k_{G_1}\le k_{G_2}\le ...\le k_{G_n}\),之间把\(x\)传到\(G_1\)就行了
      \(k_G=k_{G_1}\)
    • 并联:有\(\frac{1}{x}=\sum\limits_{i=1}^n \frac{1}{x_i}\)
      我们用柯西不等式来求\(k_G\)
      \(f_G(x)=x(\sum\limits_{i=1}^n \frac{1}{x_i} )(\sum\limits_{i=1}^n k_{G_i}x_i)\ge x(\sum\limits_{i=1}^n \sqrt \frac{1}{x_i}\sqrt {k_{G_i}x_i})^2=x(\sum\limits_{i=1}^n \sqrt {k_{G_i}})^2\)
      \(k_{G_i}=(\sum\limits_{i=1}^n \sqrt {k_{G_i}})^2\)
      根据柯西不等式,取等号的充要条件是:存在\(\lambda\in\mathbb{R},\sqrt {k_{G_i}x_i}=\frac{\lambda}{\sqrt{x_i}}\)
      为了递推到\(x_i\),我们需要不用到\(x_i\)得到\(\lambda\)
      \(\frac{1}{x_i}=\frac{\sqrt{k_{G_i}}}{\lambda},\sum\limits_{i=1}^n \frac{1}{x_i}=\frac{\sum\limits_{i=1}^n \sqrt{k_{G_i}}}{\lambda},x\sum\limits_{i=1}^n \frac{1}{x_i}=x\frac{\sum\limits_{i=1}^n \sqrt{k_{G_i}}}{\lambda},1=x\frac{\sum\limits_{i=1}^n \sqrt{k_{G_i}}}{\lambda}\)
      \(\lambda=x\sum\limits_{i=1}^n \sqrt{k_{G_i}}\)

    当然目前为止我们都是用实数递推的,但递推底层(单电阻)为\(k=1\),根据归纳容易推得上述根号下的开完根号都为整数
    所以不需要考虑实数

  • 相关阅读:
    怎么把分页按钮(首页,尾页等)放在表格右下角处?(已解决)
    zabbix单位符号
    容器、可迭代对象、迭代器、生成器之间的关系.
    Zabbix housekeeper processes more than 75% busy
    zabbix 告警信息模板
    zabbix 历史数据和趋势数据
    socket沾包问题
    面向对象--进阶
    面向对象
    列表 元组 字典
  • 原文地址:https://www.cnblogs.com/Grice/p/12263102.html
Copyright © 2011-2022 走看看