A - Rotate Editorial by kyopro_friends
プログラミングの学習を始めたばかりで何から手をつけるべきかわからない方は、まずは「practice contest」(https://atcoder.jp/contests/practice/) の問題A「Welcome to AtCoder」をお試しください。言語ごとに解答例が掲載されています。
また、プログラミングコンテストの問題に慣れていない方は、「AtCoder Beginners Selection」(https://atcoder.jp/contests/abs) の問題をいくつか試すことをおすすめします。
「競プロ典型 90 問」(https://atcoder.jp/contests/typical90) では、プログラミングコンテストで扱われる典型的な 90 問の問題に挑戦可能です。
「C++入門 AtCoder Programming Guide for beginners (APG4b)」(https://atcoder.jp/contests/APG4b) は、競技プログラマー向けのC++入門用コンテンツです。
次のような処理を行うことで問題を解くことができます
- 入力の \(a,b,c\) を文字として受け取る
- それらの文字を要求された順序で連結して文字列を作る
- 文字列を数値に変換し、合計を求める
実装例(C++)
#include<bits/stdc++.h>
using namespace std;
int main(){
char a, b, c;
cin >> a >> b >> c;
string abc = string({a, b, c});
string bca = string({b, c, a});
string cab = string({c, a, b});
int ans = stoi(abc) + stoi(bca) + stoi(cab);
cout << ans << endl;
}
実装例(Python)
a, b, c = input()
abc = a + b + c
bca = b + c + a
cab = c + a + b
ans = int(abc) + int(bca) + int(cab)
print(ans)
なお、入力を整数 \(N\) として受け取った場合でも、\(N\%10\), \(N/10\%10\) などの演算により、各桁の数字を得ることができます。(ここで \(\%\) は剰余演算を表します)
posted:
last update: