套路性地倒过来考虑,设\(f[i]\)表示拥有了\(i\)种票子时还需要多少次购买,\(g[i]\)表示还需要多少钱

推\(g[i]\)递推式时注意把代价倒过来(反正总数一定,从顺序第\(1\)张开始加钱和倒序没有区别)

#include <bits/stdc++.h>
using namespace std; const int N = 10005;
double f[N],g[N];
int n; int main() {
cin>>n;
for(int i=n-1;i>=0;--i) {
f[i]=f[i+1]+1.0*n/(n-i);
}
for(int i=n-1;i>=0;--i) {
g[i]=1.0*i/(n-i)*(f[i]+1)+g[i+1]+f[i+1]+1;
}
printf("%.2lf\n",g[0]);
}

最新文章

  1. 我去,徒弟半夜来电让写一个PHP短信验证(和群发)
  2. 开发Android 范的错误
  3. RequireJS示例
  4. Java中HashMap和TreeMap的区别深入理解
  5. ETL工具主流产品
  6. MySQL(10):实体、实体表和外键(foreign key)
  7. KeyTool
  8. HttpWebRequest在GetResponse时总是超时
  9. Gesture(手势)浅析
  10. BZOJ第7页养成计划
  11. 使用git工具快速push项目到github(精简)
  12. BZOJ_3289_Mato的文件管理_莫队+树状数组
  13. 【重学计算机】操作系统D5章:文件系统
  14. python中的编码与解码
  15. WiFi-ESP8266入门http(3-2)网页认证上网-post请求
  16. 【BZOJ2823】[AHOI2012]信号塔(最小圆覆盖)
  17. nginx的http_sub_module模块使用之替换字符串
  18. 基于dsp_builder的算法在FPGA上的实现(转自https://www.cnblogs.com/sunev/archive/2012/11/17/2774836.html)
  19. java工程师学习计划
  20. android studio 更新 Gradle错误解决方法(Gradle sync failed)

热门文章

  1. selenium获取缓存数据
  2. export default和export的使用方法
  3. 无人机通信协议MAVLink简介
  4. SecureCRT 按退格键出现 ^H 的解决办法  
  5. Uva1635 二项式递推+质因子分解+整数因子分解
  6. 服务起不来,查看ps axj 看服务是否为守护进程(TPGID 为-1)
  7. Selenium3+python自动化016-多线程
  8. Net项目添加 WebAPI
  9. jQuery---width和height的方法
  10. Mac下怎么更新nodejs