Connection Status:
Competition Arena > TheAlmostLuckyNumbers
SRM 453.5 · 2009-11-20 · by Vasyl[alphacom] · Recursion
Class Name: TheAlmostLuckyNumbers
Return Type: long
Method Name: count
Arg Types: (long long, long long)
Problem Statement

Problem Statement

A lucky number is a number whose decimal representation contains only the digits 4 and 7. An almost lucky number is a number that is divisible by a lucky number. For example, 14, 36 and 747 are almost lucky, but 2 and 17 are not. Note that a number can be both lucky and almost lucky at the same time (for example, 747).

You are given longs a and b. Return the number of almost lucky numbers between a and b, inclusive.

Constraints

  • a will be between 1 and 10,000,000,000, inclusive.
  • b will be between a and 10,000,000,000, inclusive.
Examples
0)
1
10
Returns: 3

There are three almost lucky numbers less than or equal to ten - 4, 7 and 8.

1)
14
14
Returns: 1

14 is an almost lucky number.

2)
1
100
Returns: 39
3)
1234
4321
Returns: 1178
4)
1
3
Returns: 0

Submissions are judged against all 61 archived test cases, of which 5 are shown here. Case numbers match the judge’s.

Coding Area

Language: C++17 · define a public class TheAlmostLuckyNumbers with a public method long long count(long long a, long long b) · 61 test cases · 2 s / 256 MB per case

Submitting as anonymous