A8343 | Lucky Segments
时间限制1s
内存限制256MB
通过 / 提交0/0
题目描述
Petya loves lucky numbers. Everybody knows that lucky numbers are positive integers whose decimal representation contains only the lucky digits 4 and 7. For example, numbers 47, 744, 4 are lucky and 5, 17, 467 are not.
Petya has $n$ number segments $[l_{1}; r_{1}]$ , $[l_{2}; r_{2}]$ , ..., $[l_{n}; r_{n}]$ . During one move Petya can take any segment (let it be segment number $i$ ) and replace it with segment $[l_{i}+1; r_{i}+1]$ or $[l_{i}-1; r_{i}-1]$ . In other words, during one move Petya can shift any segment to the left or to the right by a unit distance. Petya calls a number full if it belongs to each segment. That is, number $x$ is full if for any $i$ $(1<=i<=n)$ the condition $l_{i}<=x<=r_{i}$ is fulfilled.
Petya makes no more than $k$ moves. After that he counts the quantity of full lucky numbers. Find the maximal quantity that he can get.
Petya has $n$ number segments $[l_{1}; r_{1}]$ , $[l_{2}; r_{2}]$ , ..., $[l_{n}; r_{n}]$ . During one move Petya can take any segment (let it be segment number $i$ ) and replace it with segment $[l_{i}+1; r_{i}+1]$ or $[l_{i}-1; r_{i}-1]$ . In other words, during one move Petya can shift any segment to the left or to the right by a unit distance. Petya calls a number full if it belongs to each segment. That is, number $x$ is full if for any $i$ $(1<=i<=n)$ the condition $l_{i}<=x<=r_{i}$ is fulfilled.
Petya makes no more than $k$ moves. After that he counts the quantity of full lucky numbers. Find the maximal quantity that he can get.
输入格式
The first line contains two integers $n$ and $k$ ( $1<=n<=10^{5}$ , $1<=k<=10^{18})$ — the number of segments and the maximum number of moves. Next $n$ lines contain pairs of integers $l_{i}$ and $r_{i}$ $(1<=l_{i}<=r_{i}<=10^{18})$ .
Please do not use the %lld specificator to read or write 64-bit integers in С++. It is preferred to use the %I64d specificator.
Please do not use the %lld specificator to read or write 64-bit integers in С++. It is preferred to use the %I64d specificator.
输出格式
Print on the single line the single number — the answer to the problem.
输入输出样例
输入 #1
4 7 1 4 6 9 4 7 3 5
输出 #1
1
输入 #2
2 7 40 45 47 74
输出 #2
2
In the first sample Petya shifts the second segment by two units to the left (it turns into $[4; 7]$ ), after that number $4$ becomes full.
In the second sample Petya shifts the first segment by two units to the right (it turns into $[42; 47]$ ), and shifts the second segment by three units to the left (it turns into $[44; 71]$ ), after that numbers $44$ and $47$ become full.
In the second sample Petya shifts the first segment by two units to the right (it turns into $[42; 47]$ ), and shifts the second segment by three units to the left (it turns into $[44; 71]$ ), after that numbers $44$ and $47$ become full.
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?
提交通过
评测结果:Accepted