#include<stdio.h> long long int f(long long int n,long long int a,long long int b) //n代表总题数,a代表星期一到星期五做的题的数量,b代表星期六和星期天做题的数量 { int flag; long long int sum=0; //flag用来记录最后是在1-5停的,还是在6-7停的 while(n!=0) { n-=5*a; //先算1-5 if(n<0) { flag=1; break; } sum+=5; n-=2*b; //再算6-7 if(n<0) { flag=2; break; } sum+=2; } if(flag==1) //如果是在1-5停的话 { n+=5*a; //加回来,然后算是在第几天的 while(n>a) { n-=a; sum++; } sum++; //不满一天就加回去 } else if(flag==2) { n+=2*b; while(n>b) { n-=b; sum++; } sum++; } return sum; } int main() { long long int a,b,n; scanf("%lld%lld%lld",&a,&b,&n); printf("%lld",f(n,a,b)); return 0; }
flag=n/(a*5+b*2); //flag就是记录总共可以进行多少个完全周 n-=(a*5+b*2)*flag; //然后直接减 sum+=flag*7; //sum就要加上进行的天数
#include<stdio.h> int main() { long long int a,b,n,sum=0; scanf("%lld%lld%lld",&a,&b,&n); long long int flag=n/(a*5+b*2); n-=(a*5+b*2)*flag; sum+=flag*7; if(n/a<=5) { sum+=n/a; if(n/a==5) { sum+=(n-5*a)/b+(n-5*a-b)%1; } else if(n%a>0) { sum++; } }else{ sum+=5+(n-5*a)/b; if((n-5*a)%b>0) { sum++; } } printf("%lld",sum); return 0; }
0.0分
103 人评分
WU-整数平均值 (C++代码)浏览:1307 |
K-进制数 (C语言描述,蓝桥杯)浏览:955 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:729 |
C语言程序设计教程(第三版)课后习题10.3 (C语言代码)浏览:523 |
Quadratic Equation (C语言代码)浏览:1034 |
良心推荐——>题解1049:C语言程序设计教程(第三版)课后习题11.1 (C语言描述——简单明了,时间复杂度低)浏览:1318 |
母牛的故事 (C语言代码)浏览:519 |
老王赛马 (C语言代码)浏览:1733 |
C语言程序设计教程(第三版)课后习题8.1 (C语言代码)(一般方法:辗转相除法)浏览:748 |
开心的金明浏览:1810 |
新城已无旧少年 2022-04-20 21:58:44 |
对,有点小bug当时过了我就没看了,我加了一个if判断,应该好了
Duokai 2023-04-07 19:06:11 |
感谢楼主