けんちょんの競プロ精進記録

競プロの精進記録や小ネタを書いていきます

AtCoder ABC 156 A - Beginner (灰色, 100 点)

ちょっとした式変形のスキルも要求される。

問題概要

コンテストの参加回数  K、表示レーティングは次のようになる。

  •  K \ge 10 のとき:内部レーティングに一致する
  •  K \lt 10 のとき:内部レーティングから  100(10 - K) を引いた値となる

高橋君のコンテスト参加回数が  N で表示レーティングが  R のとき、 内部レーティングを求めよ。

解法

 N \ge 10 のときは、 R を答えればよい。

 N \lt 10 のときを考える。求める内部レーティングを  x とすると、表示レーティングは  x - 100(10 - N) であるから、

 x - 100(10 - N) = R

という式が成り立つ。これを  x について解くと、

 x = R + 100(10 - N)

となる。

#include <bits/stdc++.h>
using namespace std;

int main() {
    int N, R;
    cin >> N >> R;
    if (N >= 10) cout << R << endl;
    else cout << R + 100 * (10 - N) << endl;
}