当日总结
链接:https://ac.nowcoder.com/acm/problem/304617
来源:牛客网
本题有多组测试数据
第一行输入一个整数
𝑇
(
1
≤
𝑇
≤
1
0
4
)
T(1≤T≤10
4
),表示数据组数。
对于每组测试数据:
第一行输入六个整数
𝑎
1
∽
𝑎
6
(
1
≤
𝑎
𝑖
≤
6
)
a
1
∽a
6
(1≤a
i
≤6),表示 Alice 的骰子结果。
第二行输入六个整数
𝑏
1
∽
𝑏
6
(
1
≤
𝑏
𝑖
≤
6
)
b
1
∽b
6
(1≤b
i
≤6),表示 Bob 的骰子结果。
第三行输入两个整数
𝑥
,
𝑦
(
2
≤
𝑥
≤
12
,
1
≤
𝑦
≤
6
)
x,y(2≤x≤12,1≤y≤6),表示 Alice 的喊话结果。
void solve() {
int n, m, neg = 0, pos = 0, z = 0;
cin >> n >> m;
for (int i = 0, x; i < n; ++i) cin >> x, neg += x < 0, pos += x > 0, z += x == 0;
if (n - z < m) {
cout << -1 << "\n";
return;
}
if (m < ((neg || z) ? 0 : pos) || m > (neg ? n - z - 1 : pos)) {
cout << -1 << "\n";
return;
}
cout << abs(pos - m) << "\n";
}

浙公网安备 33010602011771号