CF1573A.Countdown

入门

通过率:0%

时间限制:1.00s

内存限制:256MB

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

You are given a digital clock with nn digits. Each digit shows an integer from 00 to 99, so the whole clock shows an integer from 00 to 10n−110^n-1. The clock will show leading zeroes if the number is smaller than 10n−110^{n-1}.

You want the clock to show 00 with as few operations as possible. In an operation, you can do one of the following:

  • decrease the number on the clock by 11, or
  • swap two digits (you can choose which digits to swap, and they don't have to be adjacent).

Your task is to determine the minimum number of operations needed to make the clock show 00.

你有一个包含 nn 位数字的数字时钟。每位数字显示一个从 00 到 99 的整数,因此整个时钟显示一个从 00 到 10n−110^n-1 的整数。若该数小于 10n−110^{n-1},则时钟会显示前导零。

你希望时钟显示 00,且操作次数尽可能少。每次操作可执行以下之一:

  • 将时钟上的数字减 11;
  • 交换两个数字(你可以任选要交换的两个数字,它们不必相邻)。

你的任务是确定使时钟显示 00 所需的最少操作次数。

输入格式

Each test contains multiple test cases. The first line contains the number of test cases tt (1≤t≤1031 \le t \le 10^3).

The first line of each test case contains a single integer nn (1≤n≤1001 \le n \le 100) — number of digits on the clock.

The second line of each test case contains a string of nn digits s1,s2,…,sns_1, s_2, \ldots, s_n (0≤s1,s2,…,sn≤90 \le s_1, s_2, \ldots, s_n \le 9) — the number on the clock.

Note: If the number is smaller than 10n−110^{n-1} the clock will show leading zeroes.

每个测试包含多个测试用例。第一行包含测试用例的数量 tt(1≤t≤1031 \le t \le 10^3)。

每个测试用例的第一行包含一个整数 nn(1≤n≤1001 \le n \le 100)—— 时钟上的数字位数。

每个测试用例的第二行包含一个由 nn 个数字组成的字符串 s1,s2,…,sns_1, s_2, \ldots, s_n(0≤s1,s2,…,sn≤90 \le s_1, s_2, \ldots, s_n \le 9)—— 时钟上显示的数字。

注意:若该数字小于 10n−110^{n-1},则时钟会显示前导零。

输出格式

For each test case, print one integer: the minimum number of operations needed to make the clock show 00.

对于每个测试用例,输出一个整数:使时钟显示 00 所需的最少操作次数。

输入输出样例

  • 输入#1

    7
    3
    007
    4
    1000
    5
    00000
    3
    103
    4
    2020
    9
    123456789
    30
    001678294039710047203946100020

    输出#1

    7
    2
    0
    5
    6
    53
    115

说明/提示

In the first example, it's optimal to just decrease the number 77 times.

In the second example, we can first swap the first and last position and then decrease the number by 11.

In the third example, the clock already shows 00, so we don't have to perform any operations.

在第一个例子中,最优策略是直接将数字减小 77 次。

在第二个例子中,我们可以先交换第一位和最后一位,然后将数字减 11。

在第三个例子中,时钟已显示 00,因此无需执行任何操作。

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

首页