题号:NC303876
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld
题目描述
给定一个长度为

的序列

,你每次可以做如下操作:
-
选择两个不同的下标
,令
。
请问最少操作多少次,可以使得序列中恰好有

个正数,如果无法做到请你输出 -1。
输入描述:
本题有多组测试数据
第一行输入一个整数
)
,表述数据组数。
对于每组测试数据:
第一行输入两个整数
)
。
第二行输入

个整数
)
。
保证

。
输出描述:
对于每组测试数据,输出最少操作多次可以使得序列中恰好有
个正数,如果无法做到请你输出 -1。