[转]某种传染病第一天只有一个患者,前五天为潜伏期,不发作也不会传染人 第6天开始发作,从发作到治愈需要5天时间,期间每天传染3个人 求第N天共有多少患者
http://blog.csdn.net/n67628814/archive/2011/06/09/6533080.aspx
本程序思路是以一个人为起点,10天为一个周期,进行传染病的传染,当能够传染到其他人时,再以那个人为起点继续传染。依此递归下去。
public class Infection { static int N = 13; static int men = 1; public static void main(String[] args) { infection(N); System.out.println("第" + N + "天共有" + men + "个人被感染!"); System.out.println("************************************"); } public static void infection(int N){ int day =1; if(N <= 5){ return; }else if(N>5&&N<10){ for(day = 6;day <= N;day++){ men = men + 3; } }else{ for(day = 6;day <= 10;day++){ men = men + 3; infection(N-day+1); infection(N-day+1); infection(N-day+1); } men--; } } }