ARC085 C : HSI(300)
作成日:2017.11.12
最終更新日:2017.11.12
問題概要
テストケースが$N$個ある問題に対して、$M$個はそれぞれ$1900$msで$1/2$の確率で正解し、残りはそれぞれ$100$msで必ず正解するプログラムがある。
これを提出して全てのテストケースで実行することを、すべてのケースで正解するまで繰り返す。
この時、プログラムの実行時間の総和の期待値をms単位で求めよ。
制約
$1 \leq N \leq 100$
$1 \leq M \leq min(N,5)$
考え方
一度の提出でかかる時間は$1900M$$+100(N-M)$$=100N$$+1800M$である。
また、提出回数の期待値は$2^M$である。
よって答えは$(100N$$+1800M)$$\times 2^M$である。
ソースコード
マクロ等はこちら
int N,M;
int main(){
cin >> N >> M;
cout << ((100*N+1800*M)<<M) << endl;
return 0;
}
解法まとめ
$(100N$$+1800M)$$\times 2^M$が答えである。(5行)