310698: CF1872G. Replace With Product

Memory Limit:256 MB Time Limit:1 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

G. Replace With Producttime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard output

Given an array $a$ of $n$ positive integers. You need to perform the following operation exactly once:

  • Choose $2$ integers $l$ and $r$ ($1 \le l \le r \le n$) and replace the subarray $a[l \ldots r]$ with the single element: the product of all elements in the subarray $(a_l \cdot \ldots \cdot a_r)$.

For example, if an operation with parameters $l = 2, r = 4$ is applied to the array $[5, 4, 3, 2, 1]$, the array will turn into $[5, 24, 1]$.

Your task is to maximize the sum of the array after applying this operation. Find the optimal subarray to apply this operation.

Input

Each test consists of multiple test cases. The first line contains a single integer $t$ ($1 \le t \le 10^4$) — the number of test cases. This is followed by the description of the test cases.

The first line of each test case contains a single number $n$ ($1 \le n \le 2 \cdot 10^5$) — the length of the array $a$.

The second line of each test case contains $n$ integers $a_1, a_2, \ldots, a_n$ ($1 \le a_i \le 10^9$).

It is guaranteed that the sum of the values of $n$ for all test cases does not exceed $2 \cdot 10^5$.

Output

For each test case, output $2$ integers $l$ and $r$ ($1 \le l \le r \le n$) — the boundaries of the subarray to be replaced with the product.

If there are multiple solutions, output any of them.

ExampleInput
9
4
1 3 1 3
4
1 1 2 3
5
1 1 1 1 1
5
10 1 10 1 10
1
1
2
2 2
3
2 1 2
4
2 1 1 3
6
2 1 2 1 1 3
Output
2 4
3 4
1 1
1 5
1 1
1 2
2 2
4 4
1 6
Note

In the first test case, after applying the operation with parameters $l = 2, r = 4$, the array $[1, 3, 1, 3]$ turns into $[1, 9]$, with a sum equal to $10$. It is easy to see that by replacing any other segment with a product, the sum will be less than $10$.

In the second test case, after applying the operation with parameters $l = 3, r = 4$, the array $[1, 1, 2, 3]$ turns into $[1, 1, 6]$, with a sum equal to $8$. It is easy to see that by replacing any other segment with a product, the sum will be less than $8$.

In the third test case, it will be optimal to choose any operation with $l = r$, then the sum of the array will remain $5$, and when applying any other operation, the sum of the array will decrease.

Output

题目大意:给定一个由正整数组成的数组 $a$ 和数组长度 $n$。你有一次机会执行以下操作:选择两个整数 $l$ 和 $r$ ($1 \le l \le r \le n$),然后用子数组 $a[l \ldots r]$ 中所有元素的乘积替换这个子数组。目标是使得操作后数组的和最大。如果有多个最优解,输出其中任意一个。

输入数据格式:第一行包含一个整数 $t$ ($1 \le t \le 10^4$),表示测试用例的数量。接下来是每个测试用例的描述。每个测试用例的第一行包含一个整数 $n$ ($1 \le n \le 2 \cdot 10^5$),表示数组 $a$ 的长度。第二行包含 $n$ 个整数 $a_1, a_2, \ldots, a_n$ ($1 \le a_i \le 10^9$)。所有测试用例的 $n$ 之和不超过 $2 \cdot 10^5$。

输出数据格式:对于每个测试用例,输出两个整数 $l$ 和 $r$ ($1 \le l \le r \le n$),表示要被乘积替换的子数组的边界。如果有多个解,输出其中任意一个。题目大意:给定一个由正整数组成的数组 $a$ 和数组长度 $n$。你有一次机会执行以下操作:选择两个整数 $l$ 和 $r$ ($1 \le l \le r \le n$),然后用子数组 $a[l \ldots r]$ 中所有元素的乘积替换这个子数组。目标是使得操作后数组的和最大。如果有多个最优解,输出其中任意一个。 输入数据格式:第一行包含一个整数 $t$ ($1 \le t \le 10^4$),表示测试用例的数量。接下来是每个测试用例的描述。每个测试用例的第一行包含一个整数 $n$ ($1 \le n \le 2 \cdot 10^5$),表示数组 $a$ 的长度。第二行包含 $n$ 个整数 $a_1, a_2, \ldots, a_n$ ($1 \le a_i \le 10^9$)。所有测试用例的 $n$ 之和不超过 $2 \cdot 10^5$。 输出数据格式:对于每个测试用例,输出两个整数 $l$ 和 $r$ ($1 \le l \le r \le n$),表示要被乘积替换的子数组的边界。如果有多个解,输出其中任意一个。

加入题单

上一题 下一题 算法标签: