CF2149A.Be Positive
入门
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
给定一个长度为 n 的数组 a,其中每个元素均为 −1、0 或 1。每次操作,你可以选择一个下标 i,并将 ai 加 1(即执行 ai:=ai+1)。你可以进行任意次数的操作,选择任意下标。
你的目标是用最少的操作次数,使得数组所有元素的乘积严格为正数,即 a1⋅a2⋅…⋅an>0。求所需的最小操作次数。
保证一定可以实现目标。
输入格式
每组测试包含若干测试用例。
第一行包含一个整数 t(1≤t≤104),表示测试用例的数量。接下来是每个测试用例的描述。
每个测试用例的第一行包含一个整数 n(1≤n≤8),表示数组 a 的长度。
第二行包含 n 个整数 a1,a2,…,an(−1≤ai≤1),分别表示数组 a 的元素。
输出格式
对于每个测试用例,输出一个整数,表示使数组所有元素的乘积严格为正所需的最小操作次数。
输入输出样例
输入#1
3 3 -1 0 1 4 -1 -1 0 1 5 -1 -1 -1 0 0
输出#1
3 1 4
说明/提示
示例一:从 [−1,0,1] 变为 [1,1,1] 共需要 3 次操作。
示例二:只需将 0 变为 1(1 次操作)。此时数组 a=[−1,−1,1,1],所有元素的乘积为 1。
示例三:将两个 0 变为 1(2 次操作),一个 −1 变为 1(再需要 2 次操作),共需要 4 次操作。
由 ChatGPT 5 翻译
输入解题思路,AI测评打分。不知道怎么写?