結果

問題 No.5013 セクスタプル (open)
ユーザー trineutron
提出日時 2022-11-07 00:20:11
言語 C++17(gcc12)
(gcc 12.3.0 + boost 1.87.0)
結果
AC  
実行時間 4 ms / 2,000 ms
コード長 898 bytes
コンパイル時間 927 ms
実行使用メモリ 3,560 KB
スコア 3,794
最終ジャッジ日時 2022-12-29 13:33:40
合計ジャッジ時間 4,842 ms
ジャッジサーバーID
(参考情報)
judge13 / judge15
純コード判定しない問題か言語
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 100
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <algorithm>
#include <iostream>
#include <random>

class xrand {
    uint64_t x;

   public:
    using result_type = uint32_t;
    static constexpr result_type min() {
        return std::numeric_limits<result_type>::min();
    }
    static constexpr result_type max() {
        return std::numeric_limits<result_type>::max();
    }
    xrand(uint64_t k) : x(k) {}
    xrand() : xrand(1) {}
    result_type operator()() {
        x ^= x << 9;
        x ^= x >> 7;
        return (x * 0x123456789abcdef) >> 32;
    }
};

int main() {
    std::random_device rng_seed;
    xrand rng(uint64_t(rng_seed()) << 32 | rng_seed());

    std::vector<int> order(36);
    std::iota(order.begin(), order.end(), 0);
    std::shuffle(order.begin(), order.end(), rng);
    for (int i = 0; i < 36; i++) {
        std::cout << order.at(i) / 6 + 1 << ' ' << order.at(i) % 6 + 1 << '\n';
    }
    return 0;
}
0