解题思路:
首先题目中给出了工作日和双休日写的数目,以及总共的题量,由于最大限制已经到达10的18次方,所以需要用long long int类型,同时由于数很大,很容易造成超限,所以不能从第一天开始,一天一天的循环,要先计算有多少个整周,对整周处理完之后,再去处理剩余的几天(最多六天),这样就可以满足题意了,并且不超限。
注意事项:类型要足够大,long long int
参考代码:
#include<bits/stdc++.h> using namespace std; long long int a,b,n; long long int d=0;//记录已经做过的题 long long int m=1;//记录星期 long long int h=0;//记录天数 int main(){ cin>>a>>b>>n; long long int z[7]={b,a,a,a,a,a,b}; long long int sum=a*5+b*2; long long int u=n/sum; d=sum*u; h=7*u; while(d<n){ d+=z[m%7]; m++; h++; } cout<<h; return 0; }
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题4.9 (C语言代码)浏览:377 |
C语言程序设计教程(第三版)课后习题6.10 (C语言代码)浏览:552 |
C语言训练-阶乘和数* (C语言代码)-------- 呆板写法浏览:1345 |
C语言程序设计教程(第三版)课后习题8.8 (C语言代码)浏览:1415 |
出圈】指针malloc版浏览:355 |
第三届阿里中间件性能挑战赛-总决赛亚军比赛攻略浏览:1145 |
C语言程序设计教程(第三版)课后习题8.2 (C语言代码)浏览:1028 |
C语言程序设计教程(第三版)课后习题8.8 (C语言代码)浏览:663 |
C语言程序设计教程(第三版)课后习题9.3 (C语言代码)浏览:574 |
半数集问题 (C语言代码)浏览:920 |