A. Odd Selection
记得odd,even在每组数据记得初始化位0
#include <iostream>
using namespace std;
int n,m;
int main () {
int T;
cin >> T;
while (T--) {
int odd = 0,even = 0;
cin >> n >> m;
for (int i = 1;i <= n;i++) {
int x;
cin >> x;
if (x & 1) odd++;
else even++;
}
if (!odd) {
cout << "No" << endl;
continue;
}
odd--,m--;
bool flag = false;
if (m & 1) flag = true,m--;
m -= 2*(odd/2);
if (flag) {
if (m <= 0) m = 1;
else m++;
}
if (even >= m) cout << "Yes" << endl;
else cout << "No" << endl;
}
return 0;
}

浙公网安备 33010602011771号