Official

B - Cyclic Editorial by MtSaka


初心者の方へ

この問題では整数 \(N\) の入力の仕方によって実装が異なります。それぞれ紹介します。

実装方針1

入力を \(1\) 文字毎に受け取る

\(1\) 文字ずつ入力を受け取り、順に \(a,b,c\) とします。このとき、問題文の指示通りの順序で \(a,b,c\) を出力すればよいです。

実装例(C++)

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

int main() {
    char a, b, c;
    cin >> a >> b >> c;
    cout << b << c << a << " " << c << a << b << endl;
}

実装例(Python3)

a, b, c = input()
print(f"{b}{c}{a} {c}{a}{b}")

実装方針2

整数 \(N\) を整数型として受け取る

整数 \(N\)\(100\) の位、\(10\) の位、\(1\) の位をそれぞれ計算すれば、問題文通りに出力すればよいです。 今回の問題では、\(100\) の位は \(\lfloor \frac{N}{100} \rfloor\)\(10\) の位は \(\lfloor \frac{N}{10} \rfloor\)\(10\) で割った余り、\(1\) の位は \(N\)\(10\) で割った余りとなります。

実装例(C++)

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

int main() {
    int n;
    cin >> n;
    int a = n / 100, b = (n / 10) % 10, c = n % 10;
    cout << b << c << a << " " << c << a << b << endl;
}

実装例(Python3)

n = int(input())
a = n // 100
b = (n // 10) % 10
c = n % 10
print(f"{b}{c}{a} {c}{a}{b}")

posted:
last update: