結果

問題 No.1257 変わった平均値
ユーザー MZKiMZKi
提出日時 2020-10-16 23:21:46
言語 C++11
(gcc 11.4.0)
結果
WA  
実行時間 -
コード長 1,857 bytes
コンパイル時間 1,644 ms
コンパイル使用メモリ 168,944 KB
実行使用メモリ 5,376 KB
最終ジャッジ日時 2024-07-20 23:50:17
合計ジャッジ時間 2,541 ms
ジャッジサーバーID
(参考情報)
judge1 / judge3
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 1 ms
5,248 KB
testcase_01 AC 1 ms
5,376 KB
testcase_02 AC 1 ms
5,376 KB
testcase_03 AC 1 ms
5,376 KB
testcase_04 AC 1 ms
5,376 KB
testcase_05 AC 2 ms
5,376 KB
testcase_06 AC 2 ms
5,376 KB
testcase_07 AC 2 ms
5,376 KB
testcase_08 AC 2 ms
5,376 KB
testcase_09 AC 1 ms
5,376 KB
testcase_10 AC 2 ms
5,376 KB
testcase_11 AC 1 ms
5,376 KB
testcase_12 AC 1 ms
5,376 KB
testcase_13 AC 2 ms
5,376 KB
testcase_14 AC 2 ms
5,376 KB
testcase_15 AC 1 ms
5,376 KB
testcase_16 AC 1 ms
5,376 KB
testcase_17 AC 2 ms
5,376 KB
testcase_18 AC 1 ms
5,376 KB
testcase_19 AC 2 ms
5,376 KB
testcase_20 WA -
testcase_21 WA -
testcase_22 AC 2 ms
5,376 KB
testcase_23 WA -
testcase_24 WA -
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <bits/stdc++.h>
template<class T> inline bool chmin(T&a, T b){if(a > b){a = b; return true;}else{return false;}}
template<class T> inline bool chmax(T&a, T b){if(a < b){a = b; return true;}else{return false;}}
#define ll long long
#define double long double
#define rep(i,n) for(int i=0;i<(n);i++)
#define REP(i,n) for(int i=1;i<=(n);i++)
#define mod (ll)(1e9+7)
#define inf (ll)(3e18+7)
#define eps (double)(1e-9)
#define pi (double) acos(-1)
#define P pair<int,int>
#define PiP pair<int,pair<int,int>>
#define all(x) x.begin(),x.end()
#define rall(x) x.rbegin(),x.rend()
using namespace std;

bool solve1(ll a){
    while(a % 2 == 0)a /= 2;
    return (a == 1);
}

ll solve2(ll a){
    ll ret = 0;
    while(a % 2 == 0){
        a /= 2;
        ret++;
    }
    return ret;
}

int main() {
    vector<P> a(3);  
    ll d, e, f;
    cin >> a[0].first >> a[1].first >> a[2].first >> d >> e >> f;
    a[0].second = 1;
    a[1].second = 2;
    a[2].second = 3;
    do{ 
        if(d % a[0].first)continue;
        if(e % a[1].first)continue;
        if(f % a[2].first)continue;
        if(!solve1(d/a[0].first) || !solve1(e/a[1].first) || !solve1(f/a[2].first))continue;
        ll x = solve2(d/a[0].first);
        ll y = solve2(e/a[1].first);
        ll z = solve2(f/a[2].first);
        vector<pair<ll, ll>> b = {{x, a[0].second}, {y, a[1].second}, {z, a[2].second}};
        sort(rall(b));
        if(b[0].first-b[1].first == b[2].first){
            cout << "Yes" << endl;
            rep(i, 2*b[1].first)cout << 1 << " " << b[2].second << endl;
            b[0].first -= b[1].first;
            rep(i, 2*b[0].first)cout << 1 << " " << b[1].second << endl;
            if(a[0].second != 1 || a[1].second != 2 || a[2].second != 3)cout << 2 << endl;
            return 0;
        }
    }while(next_permutation(all(a)));
    cout << "No" << endl;
}
0