1. 程式人生 > 其它 >【Codeforces Round #693 (Div. 3) A】Cards for Friends

【Codeforces Round #693 (Div. 3) A】Cards for Friends

技術標籤:leetcode演算法java

題目連結

連結

翻譯

題解

看到除2就知道是個暴力題了。

模擬就行,log複雜度除不了幾下的。

然後每次分成的碎片個數乘 \(2\) 也很快就會超過 \(n\) 了,為了防止爆 \(int\) 中間就停下來吧。

程式碼

#include <bits/stdc++.h>
#define lson l,mid,rt*2
#define rson mid+1,r,rt*2+1
#define LL long long
using namespace std;

const int N = 100;



int main(){
    ios::sync_with_stdio(0),cin.tie(0);
    int T;
    cin >> T;
    while (T--){
        LL w,h,n;
        cin >> w >> h >> n;
        LL cur = 1;
        while (w%2==0){
            w/=2;
            cur*=2;
            if (cur>=n) break;
        }
        while (h%2==0){
            h/=2;
            cur*=2;
            if (cur>=n) break;
        }
        if (cur >= n){
            cout <<"YES"<<endl;
        }else{
            cout <<"NO"<<endl;
        }
    }
    return 0;
}