結果

問題 No.3219 Ruler to Maximize
ユーザー Brandon Li
提出日時 2025-08-01 21:43:35
言語 C++17
(gcc 13.3.0 + boost 1.87.0)
結果
WA  
実行時間 -
コード長 1,165 bytes
コンパイル時間 1,790 ms
コンパイル使用メモリ 195,904 KB
実行使用メモリ 7,844 KB
最終ジャッジ日時 2025-08-01 21:43:43
合計ジャッジ時間 6,479 ms
ジャッジサーバーID
(参考情報)
judge1 / judge5
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2
other AC * 1 WA * 31
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <bits/stdc++.h>
using namespace std;
using ll = long long; 
#ifdef LOCAL
#include <debug.h>
#else
#define dbg(...) 0
#define dbgn(...) 0
#endif

int32_t main() {
    cin.tie(0)->sync_with_stdio(0);
    int n; 
    cin >> n; 
    vector<ll> v(n); 
    for(int i = 0; i < n; i++){
        cin >> v[i]; 
    }
    ll ans = 0; 
    for(int i = 0; i < (1 << 12); i++){
        ll w = 0, b = 0; 
        for(int j = 0; j < n; j++){
            if((v[j] & i) == v[j]){
                w |= v[j]; 
            }
            else {
                b |= v[j]; 
            }
        }
        ans = max(ans, w * b); 
    }
    cout << ans << '\n'; 
    for(int i = 0; i < (1 << 12); i++){
        ll w = 0, b = 0; 
        for(int j = 0; j < n; j++){
            if((v[j] & i) == v[j]){
                w |= v[j]; 
            }
            else {
                b |= v[j]; 
            }
        }
        if(w * b != ans) continue; 
        for(int j = 0; j < n; j++){
            if((v[j] & i) == v[j]){
                cout << 'W'; 
            }
            else {
                cout << 'B'; 
            }
        }
        return 0; 
    }
    return 0; 
}
0