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 1010 is called a round number. For example, the numbers 100=110^0 = 1, 101=1010^1 = 10, 102=10010^2 = 100 are round numbers, but 2020, 110110 and 256256 are not round numbers.

So, if an item is worth mm bourles (the value of the item is not greater than 10910^9), the sellers want to change its value to the nearest round number that is not greater than mm. They ask you: by how many bourles should you decrease the value of the item to make it worth exactly 10k10^k bourles, where the value of kk — is the maximum possible (kk — any non-negative integer).

For example, let the item have a value of 178178-bourles. Then the new price of the item will be 100100, and the answer will be 178−100=78178-100=78.

在商店中,售货员希望将所有价格变为“整数价格”。

在本题中,若一个数是 1010 的幂,则称其为“整数价格”。例如,100=110^0 = 1、101=1010^1 = 10、102=10010^2 = 100 均为整数价格,但 2020、110110 和 256256 不是整数价格。

因此,若某商品价值为 mm 博尔(该商品价值不超过 10910^9),售货员希望将其价格调整为不超过 mm 的最大整数价格。他们向你提问:需要将该商品价格减少多少博尔,才能使其价格恰好为 10k10^k 博尔,其中 kk 取尽可能大的非负整数。

例如,设某商品价格为 178178 博尔,则其新价格为 100100 博尔,答案为 178−100=78178 - 100 = 78。

输入格式

The first line of input data contains a single integer tt (1≤t≤1041 \le t \le 10^4) — the number of test cases .

Each test case is a string containing a single integer mm (1≤m≤1091 \le m \le 10^9) — the price of the item.

输入数据的第一行包含一个整数 tt(1≤t≤1041 \le t \le 10^4)—— 表示测试用例的数量。

每个测试用例是一行字符串,其中包含一个整数 mm(1≤m≤1091 \le m \le 10^9)—— 表示商品的价格。

输出格式

For each test case, output on a separate line a single integer dd (0≤d<m0 \le d \lt m) such that if you reduce the cost of the item by dd bourles, the cost of the item will be the maximal possible round number. More formally: m−d=10km - d = 10^k, where kk — the maximum possible non-negative integer.

对于每个测试用例,在单独一行输出一个整数 dd(0≤d<m0 \le d \lt m),使得将该物品的价格减少 dd 卢布后,其价格成为可能的最大“整十数”。更准确地说:m−d=10km - d = 10^k,其中 kk 是可能的最大非负整数。

输入输出样例

  • 输入#1

    7
    1
    2
    178
    20
    999999999
    9000
    987654321

    输出#1

    0
    1
    78
    10
    899999999
    8000
    887654321

说明/提示

In the example:

  • 1−0=1001 - 0 = 10^0,
  • 2−1=1002 - 1 = 10^0,
  • 178−78=102178 - 78 = 10^2,
  • 20−10=10120 - 10 = 10^1,
  • 999999999−899999999=108999999999 - 899999999 = 10^8,
  • 9000−8000=1039000 - 8000 = 10^3,
  • 987654321−887654321=108987654321 - 887654321 = 10^8.

Note that in each test case, we get the maximum possible round number.

在示例中:

  • 1−0=1001 - 0 = 10^0,
  • 2−1=1002 - 1 = 10^0,
  • 178−78=102178 - 78 = 10^2,
  • 20−10=10120 - 10 = 10^1,
  • 999999999−899999999=108999999999 - 899999999 = 10^8,
  • 9000−8000=1039000 - 8000 = 10^3,
  • 987654321−887654321=108987654321 - 887654321 = 10^8。

注意:在每个测试用例中,我们得到的是可能的最大整十数(round number)。

输入解题思路,AI测评打分。不知道怎么写?

首页