ABSURD - Absurd prices
Surely you know that supermarkets, shopping centres, and indeed all kind of vendors seem to have fallen in love with the digit 9, for that digit occurs most often in the price of a product, preferably at the least significant positions. Your favourite chocolate bar might cost 99 cents, just right to be able to advertise that it costs less than 1 euro. Your new bicycle might cost 499.98 euros, which, of course, is less than 500 euros.
While such comparisons are mathematically sound, they seem to impose a certain amount of stupidity on the customer. Moreover, who wants to carry home those annoying small coins you get back as change?
Fortunately, the FIFA has not adopted this weird pricing scheme: a ticket for the final in the first category for example costs 900 dollar, in the second category 600 dollar and in the third category 400 dollar. These prices may only be regarded weird for other reasons.
We want to distinguish between absurd prices like 99 cents, 499.98 euros, etc. and normal prices. To measure the absurdity of a positive integer, do the following:
- Eliminate all trailing zeros, i.e., those in the least significant positions, from the number. You now have a positive integer, say x, with a non-zero digit d at its end.
- Count the number of digits, say a, of the number x.
- if d=5 the absurdity of the number is 2 * a - 1
- otherwise, the absurdity of the number is 2 * a
For example, the absurdity of 350 is 3 and the absurdity of 900900 is 8. Using the measure of absurdity, we can define what we call an absurd price: A price c is absurd if and only if the closed interval [0.95 * c,1.05 * c] contains an integer e such that the absurdity of e is less than the absurdity of c. Given a price in cents, go ahead and tell whether it is absurd!
Input
The first line of the input consists of the number t of test cases to follow. Each test case is specified by one line containing an integer c. You may assume that 1 ≤ c ≤ 109.
Output
For each test case output if c is absurd or not. Adhere to the format shown in the sample output.
Example
Input: 4 99 49998 90000 970000000 Output: absurd absurd not absurd absurd
hide comments
shantanu tripathi:
2015-08-17 17:13:42
creating a seprte func for absurdity caused me TLE.. how absurd!! |
|
gyani:
2014-12-29 09:23:40
not taking care of numbers like 24(Affected by 25) and 26 cost me 2 WAs. |
|
Diksha Jaiswal:
2014-10-24 23:05:09
1 WA cos of printing "Absurd" instead of "absurd" :D |
|
Vaibhav Agarwal:
2013-07-02 10:53:33
finally AC after many WA's |
|
Hasil Sharma:
2013-06-30 19:49:00
nice problem :) AC in One Go \m/ |
|
Aditya Muraletharan:
2013-05-16 08:57:19
Good ad hoc problem. |
|
Abhilash Kumar:
2012-12-20 09:00:57
@triveni .for your each test case my output is right..are they the best tricky cases??
|
|
triveni:
2012-12-20 08:54:45
For abhilash and others:
|
|
Abhilash Kumar:
2012-12-20 08:18:06
anyone please give me some tricky test cases..i am getting wa and not able to find the mistake... |
|
triveni:
2012-12-19 06:52:38
1st time a good problem got AC in 1st attempt.. :) really nice question.. |
Added by: | Adrian Kuegel |
Date: | 2010-06-18 |
Time limit: | 1s |
Source limit: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Languages: | All except: NODEJS OBJC PERL6 SQLITE VB.NET |
Resource: | German Collegiate Programming Contest 2010 (Authors: Walter Guttmann/Adrian Kuegel) |