题解:CF2014B Robin Hood and the Major Oak

容易观察到:如果 \(i\) 为奇数,那么 \(i^i\) 也为奇数。如果 \(i\) 为偶数,那么 \(i^i\) 也为偶数。我们只需要统计从 \(n-k+1\)\(n\) 中奇数的个数即可。

代码:

#include<bits/stdc++.h>
using namespace std;
bool check(int n, int k) {
    long long cnt=0;
    int i=n-k+1;
    if(i%2==0) i++;
    if(n%2==0) n--;
    cnt=(n-i)/2+1;
    return cnt%2==0;
}

int main() {
    int t;
    cin >> t;
    while (t--) {
        int n, k;
        cin >> n >> k;
        if (check(n, k)) {
            puts("YES");
        } else {
            puts("NO");
        }
    }
    return 0;
}
posted @ 2024-10-02 18:56  cly312  阅读(28)  评论(0)    收藏  举报