题解:P14584 [LNCPC 2025] 点击平衡球

· · 题解

分析:

发现答案只可能是 1,2,3。若存在一种材质可以一路通过,答案为 1;若两种材质合起来可以通过,答案为 2;否则答案为 3。可以用 bitset 实现。

代码:

#include <bits/stdc++.h>
using namespace std;
int n;
bitset<1005> a, b, c;
int main()
{
    cin >> n;
    for(int i = 1; i <= n; i++)
    {
        bool A, B, C;
        cin >> A >> B >> C;
        a[i] = A;
        b[i] = B;
        c[i] = C;
    }
    if(a.count() == n || b.count() == n || c.count() == n) cout << 1;
    else if((a|b).count() == n || (b|c).count() == n || (c|a).count() == n) cout << 2;
    else cout << 3;
}