解题思路:
首先题目中给出了工作日和双休日写的数目,以及总共的题量,由于最大限制已经到达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 人评分
DNA (C语言代码)浏览:749 |
1050题解(结构体数组与结构体指针的使用)浏览:1108 |
妹子杀手的故事 (C语言代码)浏览:1054 |
模拟计算器 (C语言代码)浏览:2300 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:401 |
C语言程序设计教程(第三版)课后习题8.5 (C语言代码)浏览:666 |
C语言程序设计教程(第三版)课后习题11.1 (C语言代码)浏览:478 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:739 |
蓝桥杯基础练习VIP-报时助手 (C++代码)浏览:1066 |
C语言程序设计教程(第三版)课后习题8.3 (C++代码)浏览:508 |