結果

問題 No.1004 サイコロの実装 (2)
ユーザー SDESTINY_kprSDESTINY_kpr
提出日時 2020-03-06 21:36:45
言語 C++14
(gcc 13.3.0 + boost 1.87.0)
結果
WA  
実行時間 -
コード長 709 bytes
コンパイル時間 1,626 ms
コンパイル使用メモリ 171,180 KB
実行使用メモリ 109,208 KB
最終ジャッジ日時 2024-10-14 04:31:40
合計ジャッジ時間 5,542 ms
ジャッジサーバーID
(参考情報)
judge5 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2
other AC * 6 WA * 18 TLE * 1 -- * 13
権限があれば一括ダウンロードができます
コンパイルメッセージ
main.cpp: In function 'int main()':
main.cpp:17:16: warning: 'x' may be used uninitialized [-Wmaybe-uninitialized]
   17 |         x = (a * x + b) % m;
      |              ~~^~~
main.cpp:15:8: note: 'x' was declared here
   15 |     ll x;
      |        ^

ソースコード

diff #

#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using P = pair<int,int>;
#define rep(i,n) for(int i=0;i<n;i++)

const ll mod = ll(1e9) + 7;
const int INF = 1<<29;

int main(){
    ll a,b,x0,n;
    cin >> a >> b >> x0 >> n;
    ll m = pow(2,32);
    vector<bool> tkhs,aok;
    ll x;
    rep(i,n){
        x = (a * x + b) % m;
        tkhs.push_back(x%2);
        x = (a * x + b) % m;
        aok.push_back(x%2);
    }
    ll bk = 0,wh = 0;
    for (auto y:tkhs){
        if (y) bk++;
        else wh++;
    }
    ll tk = min(bk,wh);
    bk = 0,wh = 0;
    for (auto y:aok){
        if (y) bk++;
        else wh++;
    }
    ll ao = min(bk,wh);
    printf("%ld %ld\n",tk,ao);
    return 0;
}
0