|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 跑不掉 于 2024-12-4 16:45 编辑
四个人同时放鞭炮,甲每t1秒放一次,乙每t2秒放一次,丙每t3秒放一次,丁每t4秒放一次
,每人各放n次,求总共听到多少次鞭炮声,当几个鞭炮同时炸响,只算一次响声,第一次响声在第0秒。
我的问题是:为什么,fun函数里的for循环条件是i<maxt而不是i<=maxt???
- #include <stdio.h>
- int fun(int t1,int t2,int t3,int t4,int n)
- {
- int count,i,maxt;
- count=1;
-
- maxt=(t1>t2)? t1:t2;
- maxt=(maxt>t3)? maxt:t3;
- maxt=(maxt>t4)? maxt:t4;
-
- maxt=maxt*(n-1);
-
-
- for(i=1;i<maxt;i++)
- {
- if((i%t1==0&&i/t1<n)||(i%t2==0&&i/t2<n)||(i%t3==0&&i/t3<n)||(i%t4==0&&i/t4<n))
- {
- count++;
- }
- }
-
- return count;
- }
- int main()
- {
- int t1,t2,t3,t4,n,count;
-
- t1=7,t2=5,t3=6,t4=4,n=10;
- count=fun(t1,t2,t3,t4,n);
-
- printf("总共可以听到%d次鞭炮声\n",count);
- return 0;
- }
复制代码 |
|