AtCoder Grand Contest 045 – 解题报告

A – Xor Battle

感觉有点傻逼啊。

对于 0 而言,我们只需要最后的答案为 0 即可。那么,我们从后往前进行维护,维护 \(0\) 位置上权值组合而成的线性基,然后每次到 \(1\) 位置的时候就在里面查即可,如果没查到,那么对于 \(1\) 而言,后面的 \(0\) 并不足以抵消该操作,所以可以判 \(1\) 获胜,亦而反之。

Continue reading →

AtCoder Regular Contest 091 – 解题报告

这场代码都好短啊。

C – Flip,Flip, and Flip……

傻逼题,随便搞就行了。

// ARC091A.cpp
#include <bits/stdc++.h>

using namespace std;

typedef long long ll;

int n, m;

int main()
{
    scanf("%d%d", &n, &m);
    if (n > m)
        swap(n, m);
    if (n == 1)
    {
        if (m == 1)
            puts("1");
        else
            printf("%d\n", max(0, m - 2));
        return 0;
    }
    printf("%lld\n", max(0LL, 1LL * (n - 2) * (m - 2)));
    return 0;
}
Continue reading →