CF940D.Alena And The Heater

普及/提高-

通过率:0%

时间限制:2.00s

内存限制:256MB

AC君温馨提醒

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

题目描述

"We've tried solitary confinement, waterboarding and listening to Just In Beaver, to no avail. We need something extreme."

"Little Alena got an array as a birthday present..."

The array b of length n is obtained from the array a of length n and two integers l and r (l ≤ r) using the following procedure:

_b_1 = _b_2 = _b_3 = _b_4 = 0.

For all 5 ≤ i ≤ n:

  • b__i = 0 if a__i, a__i - 1, a__i - 2, a__i - 3, a__i - 4 > r and b__i - 1 = b__i - 2 = b__i - 3 = b__i - 4 = 1
  • b__i = 1 if a__i, a__i - 1, a__i - 2, a__i - 3, a__i - 4 < l and b__i - 1 = b__i - 2 = b__i - 3 = b__i - 4 = 0
  • b__i = b__i - 1 otherwise

You are given arrays a and b' of the same length. Find two integers l and r (l ≤ r), such that applying the algorithm described above will yield an array b equal to b'.

It's guaranteed that the answer exists.

我们尝试过单独监禁、水刑,甚至听《Just In Beaver》,但都无济于事。我们需要一些更极端的手段。

小阿莲生日时收到了一个数组……

长度为 $ n $ 的数组 $ b $ 是由长度为 $ n $ 的数组 $ a $ 及两个整数 $ l $ 和 $ r $(满足 $ l \leq r $)通过如下过程得到的:

$ b_1 = b_2 = b_3 = b_4 = 0 $。

对所有 $ 5 \leq i \leq n $:

  • 若 $ a_i,, a_{i-1},, a_{i-2},, a_{i-3},, a_{i-4} > r $ 且 $ b_{i-1} = b_{i-2} = b_{i-3} = b_{i-4} = 1 $,则 $ b_i = 0 $;
  • 若 $ a_i,, a_{i-1},, a_{i-2},, a_{i-3},, a_{i-4} < l $ 且 $ b_{i-1} = b_{i-2} = b_{i-3} = b_{i-4} = 0 $,则 $ b_i = 1 $;
  • 否则 $ b_i = b_{i-1} $。

现给定两个等长的数组 $ a $ 和 $ b' $。请找出两个整数 $ l $ 和 $ r $(满足 $ l \leq r $),使得按上述算法处理数组 $ a $ 后所得的数组 $ b $ 恰好等于 $ b' $。

题目保证答案一定存在。

输入格式

The first line of input contains a single integer n (5 ≤ n ≤ 105) — the length of a and b'.

The second line of input contains n space separated integers _a_1, ..., a__n ( - 109 ≤ a__i ≤ 109) — the elements of a.

The third line of input contains a string of n characters, consisting of 0 and 1 — the elements of b'. Note that they are not separated by spaces.

输入的第一行包含一个整数 nn(5≤n≤1055 \leq n \leq 10^5)—— 表示数组 aa 和 bb 的长度。

输入的第二行包含 nn 个用空格分隔的整数 a1,…,ana_1, \dots, a_n(−109≤ai≤109-10^9 \leq a_i \leq 10^9)—— 表示数组 aa 的元素。

输入的第三行包含一个由 nn 个字符组成的字符串,每个字符为 0 或 1 —— 表示数组 bb 的元素。注意:这些字符之间不用空格分隔。

输出格式

Output two integers l and r ( - 109 ≤ l ≤ r ≤ 109), conforming to the requirements described above.

If there are multiple solutions, output any of them.

It's guaranteed that the answer exists.

输出两个整数 ll 和 rr(满足 −109≤l≤r≤109-10^9 \le l \le r \le 10^9),使其符合上述要求。

若存在多个解,输出其中任意一个即可。

保证答案一定存在。

输入输出样例

  • 输入#1

    5
    1 2 3 4 5
    00001

    输出#1

    6 15
  • 输入#2

    10
    -10 -9 -8 -7 -6 6 7 8 9 10
    0000111110

    输出#2

    -5 5

说明/提示

In the first test case any pair of l and r pair is valid, if 6 ≤ l ≤ r ≤ 109, in that case _b_5 = 1, because _a_1, ..., _a_5 < l.

在第一个测试用例中,任意满足 6 ≤ l ≤ r ≤ 1096 \leq l \leq r \leq 10^9 的 ll 和 rr 均为合法组合;此时 b5 = 1b_5 = 1,因为 a1, …, a5 < la_1, \ldots, a_5 < l。

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

首页