結果

問題 No.420 mod2漸化式
ユーザー neko_the_shadow
提出日時 2019-03-29 17:05:32
言語 C++17
(gcc 13.3.0 + boost 1.87.0)
結果
AC  
実行時間 17 ms / 1,000 ms
コード長 2,253 bytes
コンパイル時間 534 ms
コンパイル使用メモリ 72,872 KB
最終ジャッジ日時 2025-01-07 00:37:23
ジャッジサーバーID
(参考情報)
judge5 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1
other AC * 35
権限があれば一括ダウンロードができます

ソースコード

diff #

#include<iostream>
#include<vector>

typedef long long ll;

int main() {
    std::vector<ll> a(32), b(32);
    a[0] = 1;
    b[0] = 0;
    a[1] = 31;
    b[1] = 2147483647;
    a[2] = 465;
    b[2] = 64424509410;
    a[3] = 4495;
    b[3] = 934155386445;
    a[4] = 31465;
    b[4] = 8718783606820;
    a[5] = 169911;
    b[5] = 58851789346035;
    a[6] = 736281;
    b[6] = 306029304599382;
    a[7] = 2629575;
    b[7] = 1275122102497425;
    a[8] = 7888725;
    b[8] = 4371847208562600;
    a[9] = 20160075;
    b[9] = 12569060724617475;
    a[10] = 44352165;
    b[10] = 30724370660176050;
    a[11] = 84672315;
    b[11] = 64521178386369705;
    a[12] = 141120525;
    b[12] = 117311233429763100;
    a[13] = 206253075;
    b[13] = 185742786263791575;
    a[14] = 265182525;
    b[14] = 257182319442172950;
    a[15] = 300540195;
    b[15] = 312292816465495725;
    a[16] = 300540195;
    b[16] = 333112337563195440;
    a[17] = 265182525;
    b[17] = 312292816465495725;
    a[18] = 206253075;
    b[18] = 257182319442172950;
    a[19] = 141120525;
    b[19] = 185742786263791575;
    a[20] = 84672315;
    b[20] = 117311233429763100;
    a[21] = 44352165;
    b[21] = 64521178386369705;
    a[22] = 20160075;
    b[22] = 30724370660176050;
    a[23] = 7888725;
    b[23] = 12569060724617475;
    a[24] = 2629575;
    b[24] = 4371847208562600;
    a[25] = 736281;
    b[25] = 1275122102497425;
    a[26] = 169911;
    b[26] = 306029304599382;
    a[27] = 31465;
    b[27] = 58851789346035;
    a[28] = 4495;
    b[28] = 8718783606820;
    a[29] = 465;
    b[29] = 934155386445;
    a[30] = 31;
    b[30] = 64424509410;
    a[31] = 1;
    b[31] = 2147483647;

    ll x;
    std::cin >> x;
    if (0 <= x && x < 32) {
        std::cout << a[x] << " " << b[x] << std::endl;
    } else {
        std::cout << 0 << " " << 0 << std::endl;
    }
    
}

// int main() {
//     std::vector<ll> a(32, 0LL), b(32, 0LL);
//     for (ll n = 0; n < (1LL << 31); n++) {
//         ll y = __builtin_popcountll(n);
//         a[y]++;
//         b[y] += n;
//     }

//     for (int i = 0; i < 32; i++) {
//         std::cout << "a[" << i << "] = " << a[i] << ";" << std::endl;
//         std::cout << "b[" << i << "] = " << b[i] << ";" << std::endl;
//     }
// }
0