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

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

AtCoder ABC 161 A - ABC Swap (灰色, 100 点)

言われた通りの操作を愚直に実行するのが、何も考えなくてよくて楽だと思う!

問題概要

箱 A, B, C に、それぞれ数  X, Y, Z の書かれたカードを入れる。

  1. 箱 A, B の中身を入れ替える
  2. 箱 A, C の中身を入れ替える

これらの操作を順に実行したあとの、箱 A, B, C に入っているカードの数を答えよ。

解法

最終的に箱 A, B, C に入っている数を求めるのが正攻法かもしれないが、次のように機械的に無思考で処理する方が楽できる。

swap(X, Y);
swap(X, Z);

コード

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

int main() {
    int X, Y, Z;
    cin >> X >> Y >> Z;
    swap(X, Y);
    swap(X, Z);
    cout << X << " " << Y << " " << Z << endl;
}