牛客小白月赛21 - Channels(纪念一下卡我心态的一道题)

 

链接:https://ac.nowcoder.com/acm/contest/3947/C
来源:牛客网

题目描述

Nancy喜欢学习,也喜欢看电视。
为了想了解她能看多长时间的节目,不妨假设节目从时刻1开始,一直播放到时刻6×10100。每个节目持续50个时刻,节目与节目间会有10个时刻的广告时间。
然而,Nancy实在是太忙了,她从t1时刻开始观看,观看至t2时刻,请你帮忙计算她有多少个时刻能欣赏到电视节目。

输入描述:

若干行:每行两个整数t1t2
数据满足:1≤t1≤t2≤1018

输出描述:

若干行:每行一个整数,表示能品味电视节目的时刻数。

示例1

输入

1 61

输出

51
示例2

输入

116969978 507978500
180480072 791550396
139567120 655243745
1470545 167613747
57644034 176077476
44676 56984808
215706822 369042088
108368065 320914746

输出

325840433
509225275
429730516
138452673
98694536
47450113
127779387
177122232

 

纪念一下卡我心态的一道题,以后这种题不会再犯傻了

 

计算[1,r]的答案减去[1,l-1]的答案即可,不过需要注意其端点可能在广告的时刻。

 

 1 #include <stdio.h>
 2 #include <string.h>
 3 #include <iostream>
 4 #include <string>
 5 #include <math.h>
 6 #include <algorithm>
 7 #include <vector>
 8 #include <stack>
 9 #include <queue>
10 #include <set>
11 #include <map>
12 const int INF=0x3f3f3f3f;
13 typedef long long LL;
14 const int maxn=1e5+10;
15 using namespace std;
16 
17 LL solve(LL n)
18 {
19     return n/60*50+(n%60<=50?n%60:50);
20 }
21 
22 int main()
23 {
24 
25     LL t1,t2;
26     while(~scanf("%lld %lld",&t1,&t2))
27     {
28         printf("%lld\n",solve(t2)-solve(t1-1));
29     }
30     
31     return 0;
32 }

 

 

-

posted @ 2020-01-18 23:28  jiamian22  阅读(171)  评论(0编辑  收藏  举报