用动态分配法解“传染问题”
来源:互联网 发布:淘宝店铺年度交易额 编辑:程序博客网 时间:2024/04/28 10:47
某种传染病第一天只有一个患者,前五天为潜伏期,不发作也不会传染人
第6天开始发作,从发作到治愈需要5天时间,期间每天传染3个人
求第N天共有多少患者
解题的思路是这样的:
1、1-5天,0个人被传染,6-10天有15个人(也就是一天3)
2、第11天,被传染的人数应该是从第2天到6天被传染的人数加乘3
3、第N天,被传染的人数是第N-9到N-9+4天人数的和乘3
4、所以我们只要把(1,N-1)每天被传染的人数保存此来就可以通过公式算出第N天人数,然后从1加到N。
public static long SickMen(long N)
{
long count = 0;
long[] M = new long[N];
if (N <= 5 && N > 0)
return 1;
for (long i = 5; i < 10; i++)
{
if (i < N)
M[i] = 3;
}
if (N >= 10)
{
for (long j = 10; j < N; j++)
{
long temp = 0;
long length = j - 9;
for (long l = 0; l < 5; l++)
temp += M[length + l];
M[j] = temp * 3;
}
}
for (long q = 0; q < N; q++)
count += M[q];
return count;
}
- 用动态分配法解“传染问题”
- 找根-传染问题
- 传染
- c# vd2005 动态分配字符串数组大小问题,用ArrayList
- 流感传染
- 流感传染
- 流感传染
- 流感传染
- 初始化动态分配的数组问题
- 关于动态分配内存的问题
- VisualBox动态分配存储的问题
- 动态分配内存的指针问题
- 动态分配解决回文数问题
- 动态分配
- 动态分配
- 动态分配
- 动态分配
- 动态分配
- df 和du 的区别 linux磁盘命令详解
- c++ 类构造函数没有返回值 , 如何判断是否 "构造" 成功 ?
- 常用的SQL数据库语句总结
- 多线程编程中sleep和WaitForSingleObject
- strtok例子
- 用动态分配法解“传染问题”
- 企业 ICP证
- 《纪念我渐逝的爱情》
- Android滑动手势侦测方法介绍
- 关于IIS中Request.ServerVariables("SCRIPT_NAME")的bug
- VC中TRACE
- google c++ style 笔记
- js总结:子窗口创建及父窗口与子窗口之间通信
- NoSQL数据库笔谈