CF1702A.Round Down the Price
入门
通过率:0%
时间限制:1.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
At the store, the salespeople want to make all prices round.
In this problem, a number that is a power of 10 is called a round number. For example, the numbers 100=1, 101=10, 102=100 are round numbers, but 20, 110 and 256 are not round numbers.
So, if an item is worth m bourles (the value of the item is not greater than 109), the sellers want to change its value to the nearest round number that is not greater than m. They ask you: by how many bourles should you decrease the value of the item to make it worth exactly 10k bourles, where the value of k — is the maximum possible (k — any non-negative integer).
For example, let the item have a value of 178-bourles. Then the new price of the item will be 100, and the answer will be 178−100=78.
在商店中,售货员希望将所有价格变为“整数价格”。
在本题中,若一个数是 10 的幂,则称其为“整数价格”。例如,100=1、101=10、102=100 均为整数价格,但 20、110 和 256 不是整数价格。
因此,若某商品价值为 m 博尔(该商品价值不超过 109),售货员希望将其价格调整为不超过 m 的最大整数价格。他们向你提问:需要将该商品价格减少多少博尔,才能使其价格恰好为 10k 博尔,其中 k 取尽可能大的非负整数。
例如,设某商品价格为 178 博尔,则其新价格为 100 博尔,答案为 178−100=78。
输入格式
The first line of input data contains a single integer t (1≤t≤104) — the number of test cases .
Each test case is a string containing a single integer m (1≤m≤109) — the price of the item.
输入数据的第一行包含一个整数 t(1≤t≤104)—— 表示测试用例的数量。
每个测试用例是一行字符串,其中包含一个整数 m(1≤m≤109)—— 表示商品的价格。
输出格式
For each test case, output on a separate line a single integer d (0≤d<m) such that if you reduce the cost of the item by d bourles, the cost of the item will be the maximal possible round number. More formally: m−d=10k, where k — the maximum possible non-negative integer.
对于每个测试用例,在单独一行输出一个整数 d(0≤d<m),使得将该物品的价格减少 d 卢布后,其价格成为可能的最大“整十数”。更准确地说:m−d=10k,其中 k 是可能的最大非负整数。
输入输出样例
输入#1
7 1 2 178 20 999999999 9000 987654321
输出#1
0 1 78 10 899999999 8000 887654321
说明/提示
In the example:
- 1−0=100,
- 2−1=100,
- 178−78=102,
- 20−10=101,
- 999999999−899999999=108,
- 9000−8000=103,
- 987654321−887654321=108.
Note that in each test case, we get the maximum possible round number.
在示例中:
- 1−0=100,
- 2−1=100,
- 178−78=102,
- 20−10=101,
- 999999999−899999999=108,
- 9000−8000=103,
- 987654321−887654321=108。
注意:在每个测试用例中,我们得到的是可能的最大整十数(round number)。
输入解题思路,AI测评打分。不知道怎么写?