四人放鞭炮模拟
请补全代码,模拟四人放鞭炮的声音时刻统计。四人的间隔t1、t2、t3、t4分别为7、5、6、4;第0秒共同放响计一次,随后第t秒只要有人满足t为其间隔的倍数且t/间隔<n,就计一个声音时刻,多人同时放响仍只计一次。 本题统计窗口为0≤t<max(t1,t2,t3,t4)×(n-1),右端点不计入;n=10。无输入,输出The sound : 28。
#include <stdio.h>
#pragma warning (disable:4996)
#define OK(i, t, n) ((___1___%t==0) && (i/t<n))
int fun(int t1, int t2, int t3, int t4, int n)
{ int count, t , maxt=t1;
if (maxt < t2) maxt = t2;
if (maxt < t3) maxt = t3;
if (maxt < t4) maxt = t4;
count=1; /* 给count赋初值 */
for(t=1; t< maxt*(n-1); ___2___)
{
if(OK(t, t1, n) || OK(t, t2, n)|| OK(t, t3, n) || OK(t, t4, n) )
count++;
}
return ___3___;
}
int main(void)
{ int t1=7, t2=5, t3=6, t4=4, n=10, r;
r = fun(t1, t2, t3, t4, n);
printf("The sound : %d\n", r);
}
控制台
调试终端
