結果
問題 |
No.1004 サイコロの実装 (2)
|
ユーザー |
![]() |
提出日時 | 2020-03-06 23:25:15 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
TLE
|
実行時間 | - |
コード長 | 635 bytes |
コンパイル時間 | 1,408 ms |
コンパイル使用メモリ | 167,524 KB |
実行使用メモリ | 13,632 KB |
最終ジャッジ日時 | 2024-10-14 09:54:15 |
合計ジャッジ時間 | 5,225 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 24 TLE * 1 -- * 13 |
コンパイルメッセージ
main.cpp: In function 'int main()': main.cpp:9:25: warning: overflow in conversion from 'double' to 'unsigned int' changes value from '4.294967296e+9' to '4294967295' [-Woverflow] 9 | unsigned int m = pow(2, 32); | ~~~^~~~~~~
ソースコード
#include <bits/stdc++.h> using namespace std; int main(){ unsigned int a, b, xo, n; int i, tk_b=0, tk_w=0, ak_b=0, ak_w=0, tk=0, ak=0; //vector<int> tkh(n); //vector<int> tkh(n); unsigned int m = pow(2, 32); cin >> a >> b >> xo >> n; //xo = a*xo + b; //xo = xo %m; for(i=0; i<n; i++){ xo = a*xo + b; xo = xo%m; tk += xo%6 + 1; if(tk%2 == 0) tk_w++; else tk_b++; xo = a*xo + b; xo = xo%m; ak += xo%6 + 1; if(ak%2 == 0) ak_w++; else ak_b++; } a = min(tk_w, tk_b); b = min(ak_w, ak_b); cout << a << " " << b << endl; }