文字列として処理する方が楽であろう。
問題概要
3 桁の整数 が与えられる。 の各桁の値について、1 は 9 に変換し、9 は 1 に変換したものを出力せよ。
解法
整数ではなく、文字列として処理する方が楽だと思われる。各文字について、
- '1' なら '9' を出力
- '9' なら '1' を出力
- それ以外ならそのまま出力
とすればよい。
#include <bits/stdc++.h> using namespace std; int main() { string n; cin >> n; for (auto c : n) { if (c == '1') cout << '9'; else if (c == '9') cout << '1'; else cout << c; } cout << endl; }