작성일 :

문제 링크

2744번 - 대소문자 바꾸기

설명

문자열에 포함된 모든 알파벳의 대소문자를 반전시켜 출력하는 간단한 구현 문제입니다.

  • 소문자는 대문자로, 대문자는 소문자로 바꾸어 출력하면 됩니다.
  • 공백이나 숫자 없이 오직 영문자만 주어지므로, 조건 분기 처리가 간단합니다.

접근법

  • 문자열의 각 문자에 대해 대문자인지 소문자인지를 판별한 후,
    해당 문자를 반대 케이스로 변환하여 출력합니다.

Code

[ C# ]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
using System;

class Program {
  static void Main() {
    string input = Console.ReadLine();
    char[] result = new char[input.Length];

    for (int i = 0; i < input.Length; i++) {
      if (char.IsUpper(input[i]))
        result[i] = char.ToLower(input[i]);
      else
        result[i] = char.ToUpper(input[i]);
    }

    Console.WriteLine(new string(result));
  }
}



[ C++ ]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <bits/stdc++.h>

using namespace std;

int main() {
  ios::sync_with_stdio(false);
  cin.tie(nullptr);

  string str; cin >> str;
  for (size_t i = 0; i < str.size(); i++) {
    if (isupper(str[i])) str[i] += 32;
    else str[i] -= 32;
  }
  cout << str << "\n";

  return 0;
}