https://www.hackerrank.com/contests/joi2018/challenges/joi-joi-fall-in-love-1
解法
ゲームの手順を分数を使って、誤差なく計算する。
分子をup, 分母をdwnとして、計算していく。
x足す
up += x*dwn
x引く
up -= x*dwn
x/y倍する
up *= x
dwn *= y
xで割る
dwn *= x
分数の用に計算すると、このようなルールになるので、これですべての手順を行う。
後は、up/dwnを計算すると答え。
int N; //--------------------------------------------------------------------------------------------------- void _main() { cin >> N; ll up = 0, dwn = 1; up += (N - 10) * 3 + 10; dwn *= 2; up += 15 * dwn; up *= 3; up *= 2; dwn *= 9; up -= N * dwn; up *= 3; up += 47 * dwn; ll ans = up / dwn; cout << ans << endl; }