SPOJ Problem Set (classical)

1030. Triple Fat Ladies

Problem code: EIGHTS

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 1st number larger than k 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 ≤ 20000).

Output

For each test case, output a single integer which denotes the 1st number larger than k whose cube ends in 888. The result will be less than 263.

Example

Input:
1
1

Output:
192

All Submissions
Best Solutions


Point Value: 5
Time Limit: 2.00s
Memory Limit: 16M
Added: Apr 08, 2011

Languages Allowed:
C++03, PAS, C, HASK, ASM, RUBY, PYTH2, JAVA, PHP, SCM, CAML, PERL, C#, C++11, PYTH3

Comments (Search)

<
1
2
>

can someone help me? i tested it with the highest number 20000, it worked, and i still get 45.454545


hezeyu2007 I checked your code, and I think to fix your problem you should try changing your int j to long. Also instead of using int ans, you could just print out j.

[admin note: code removed]

Your solution is simply too slow.

Please help, i am getting 90/100, i do not know where i am making a mistake

Try to make test cases to test your program with.
For example, what happens when you input:

3
2000
2200
2400

I created the algorithm, and when I test it, it seems to work well. However, when I put it into the submissions, I got a 45.45/100. I created a program which showed what the tester input. Heres what I got:

11 --> This is t the rest is k.
1
200
500
753
102

Only 5/11 were output (explains the score). However, when I ran this, there were no issues, even when I put in numbers which might trip it up (20001, -19). Is the problem with my program, or the tester?

We cut off output, partially to avoid situations such as the one you observed, where you attempt to print out the entire input file.

Generally speaking, if nearly 300 other people have solved the problem, and you have not, it's probably (but not always!) not an issue with the grader.

I've personally verified that your solution is incorrect.

Incidentally, there is no need to enter impossible input. The problem states that the bounds are 1 <= k <= 20000, and so you need not test anything outside that range.

My code runs perfectly on my computer. I even got the test cases and they're returned perfectly. But when I submit I get 0/100... (RE ; output clipped)

may I have a small hint? I got only 9.09/100. thanks

Premature optimisation is the root of all evil. Your approach is simply wrong -- you're reporting numbers that are cube roots of things ending in 888, but not necessarily the smallest ones greater than k.

thanks, i was stupid

Why does the modulus operator (%) get turned into 00 when I submit it?

You have to add an extra space between the % sign and the '1'. ie. % 10(0000)

Uploading from file works too.

My program gets a 54.4545454545 score
Can somebody possibly help me?

If not can someone give me some sample cases so i can fix the problem?
There is a somewhat lack of sample cases.

You should be making your own.

I ended up just listing all the outputs using a loop in the program. It ended up just being the range.
Don't need anymore help.

I get 0/100, can anyone figure what I did wrong? It says "Exception in thread ...", and I cannot view further.

You can't have "package peg;" at the top of your program.

got 0/100 am i understanding the question wrong?

The 0/100 is because you're exceeding the time limit.