Submit | All submissions | Best solutions | Back to list |
EIGHTS - Triple Fat Ladies |
Pattern Matchers have been designed for various sorts of patterns. Mr. HKP likes to observe patterns in numbers. After completing his extensive research on the squares of numbers, he has moved on to cubes. Now he wants to know all numbers whose cube ends in 888.
Given a number k, help Mr. HKP find the kth number (indexed from 1) whose cube ends in 888.
Input
The first line of the input contains an integer t, the number of test cases. t test cases follow.
Each test case consists of a single line containing a single integer k (1 <= k <= 2000000000000).
Output
For each test case, output a single integer which denotes the kth number whose cube ends in 888. The result will be less than 263.
Example
Input: 1 1 Output: 192
Added by: | Matthew Reeder |
Date: | 2006-10-30 |
Time limit: | 1.197s |
Source limit: | 30000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Languages: | All except: ERL JS-RHINO NODEJS PERL6 VB.NET |
Resource: | Al-Khawarizm 2006 |
hide comments
|
||||||||||||||
2019-08-27 16:57:11
ac in first go. just use the formula and try to understand the concept |
||||||||||||||
2019-06-08 11:17:47
use basic string multipplication and use AP formula Tn=192+(n-1)*250 === or use it Tn=n*250-58. n*250 for this use string multiplcation . and substract 58 from it. |
||||||||||||||
2019-05-19 08:27:53
Nice concept :) |
||||||||||||||
2019-02-28 06:48:24
this blog not using formula: <snip> Last edit: 2022-08-07 10:45:19 |
||||||||||||||
2019-02-24 12:32:32
ac in first go ..just read in comments 192+(k-1)*250 and observer it ..and print it .happy coding. |
||||||||||||||
2019-01-19 20:52:31
c++ users please use long long instead of int AC in 3rd attempt. |
||||||||||||||
2018-10-30 05:48:45
I hate spoiler but i love it :) |
||||||||||||||
2018-09-05 02:33:30
C++14 one liner !! std::transform(std::next(std::istream_iterator<long long>(std::cin)), std::istream_iterator<long long>{}, std::ostream_iterator<long long>(std::cout, "\n"), [](auto num) {return 192 + (num - 1) * 250;}); Last edit: 2018-09-05 02:38:50 |
||||||||||||||
2018-08-16 11:04:24
reason behind AP is that we need some number after adding that last three digits should not disturbed of 192^3. Let no is some x. (192+x)^3 = 192^3 (have last 3 digits 888) + x^3 + 3 * 192 * x ( x+ 192 ). to have last 3 digits of cube of 192 + x , x^3 should have last 3 digits 0 as well of 3 * 192 * x, from this x^3, it is clear that x should be some multiple of 10. from this 3 * 192 * x = 576 * x , x could be 1000 or factor of 1000 so that 576 * x always has 000 in its end. so the smallest factor of 1000 whose product with 576 has 000 at end is 250. so the ans is 250. |
||||||||||||||
2018-06-27 09:00:44
@sreejoy4242 why separate case for k==1 |