欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 产业 > C语言-详细讲解-洛谷P1424 小鱼的航程(改进版)

C语言-详细讲解-洛谷P1424 小鱼的航程(改进版)

2025/3/14 8:29:03 来源:https://blog.csdn.net/2402_86955314/article/details/143417705  浏览:    关键词:C语言-详细讲解-洛谷P1424 小鱼的航程(改进版)

目录

1.题目要求

2.题目解读 

3.代码实现 

1.使用switch-case语句

2.使用for循环 

 3.不用循环(暴力版)


1.题目要求

2.题目解读 

此题难点在于对天数的计算,这里我们可以考虑通过循环来算出小鱼游泳的天数 

3.代码实现 

1.使用switch-case语句

#include<stdio.h>
int main()
{int x;long long int n,way=0;scanf("%d %lld",&x,&n);for(int i=1;i<=n;i++){switch(x)//对星期依次判断{case 1:case 2:case 3:case 4:case 5:way+=250;case 6: x++;continue;//周六不进行 进行下一循环case 7:x=1;continue;//周日清零为星期一 并进行下一循环}x++;//工作日情况下 进入下一日}printf("%lld",way);return 0;
}

2.使用for循环 

#include<cstdio>
int main()
{int n,k,s=0;//周n开始游,过了k天,游了s公里scanf("%d %d",&n,&k);for(int i=1;i<=k;i++)//要游k天,所以用循环{if(n!=6 && n!=7) s+=250;//如果不是周末则加250if(n==7) n=1;//如果是周7,那么赋值为1else n++;//否则n+1}printf("%d",s);//输出游了多少公里return 0;
}

 3.不用循环(暴力版)

#include <stdio.h>int begin,days,front,mid,end;int main()
{scanf("%d %d",&begin,&days);front=6-begin;if(front<0)front=0;end=(days-8+begin)%7;if(end>5)end=5;mid=(days-8+begin-(days-8+begin)%7)/7*5;if(begin<=5&&begin+days-1<=5)printf("%d",days*250);else{if((mid+front+end)>=0)printf("%d",(mid+front+end)*250);elseprintf("0");}
}

 ***新人博主创作不易,希望大家多多点赞关注呀~

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词