您的位置:首页 > 其它

Educational Codeforces Round 6 (B)模拟

2016-01-22 01:40 405 查看
B. Grandfather Dovlet’s calculator

time limit per test
1 second

memory limit per test
256 megabytes

input
standard input

output
standard output

Once Max found an electronic calculator from his grandfather Dovlet's chest. He noticed that the numbers were written with seven-segment indicators (https://en.wikipedia.org/wiki/Seven-segment_display).



Max starts to type all the values from a to b.
After typing each number Max resets the calculator. Find the total number of segments printed on the calculator.

For example if a = 1 and b = 3 then
at first the calculator will print 2 segments, then — 5 segments
and at last it will print 5 segments. So the total number of printed segments is 12.

Input

The only line contains two integers a, b (1 ≤ a ≤ b ≤ 106)
— the first and the last number typed by Max.

Output

Print the only integer a — the total number of printed segments.

Sample test(s)

input
1 3


output
12


input
10 15


output
39


题意:给你区间[L,R],问从L打印到R,至少需要多少线段。

题解:先数一下每个数字需要多少笔画,然后直接模拟可以了

#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cmath>
#include<cstring>
#include<map>
using namespace std;
int ans[100]={6,2,5,5,4,5,6,3,7,6};
int main()
{
#ifdef CDZSC
freopen("i.txt","r",stdin);
#endif
int n,m,x,y;

while(~scanf("%d%d",&n,&m))
{
int sum=0;

for(int i=n;i<=m;i++)
{
if(i<10)
sum+=ans[i];
else
{
int tmp=i;
while(tmp>0)
{
sum+=ans[tmp%10];
tmp/=10;
}
}
}
printf("%d\n",sum);
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: