https://beta.atcoder.jp/contests/abc099/tasks/abc099_b
解説
https://beta.atcoder.jp/contests/abc099/submissions/2667746
左側の塔が1+...+nの高さであるとする。
すると、右側の塔の長さは1+...+(n-1)となる。
ここでxだけ雪が積もっているとすると、左側の塔の埋もれていない部分の高さはa = 1+...+(n-1)-x
右側の塔の埋もれていない部分の高さはb = 1+...+n-xとなる。
ここでb-aをする。
b-a={1+...+n-x} - {1+...+(n-1)-x} = {1+...+n} - {1+...+(n-1)} = n
となり、nの値が分かる。
これで、1+...+n=n*(n+1)/2が計算できる。
b=1+...+n-xを変形するとx=1+...+n-bであるため、答えが求まる。
int A, B; //--------------------------------------------------------------------------------------------------- void _main() { cin >> A >> B; int d = B - A; int ans = d * (d + 1) / 2 - B; cout << ans << endl; }