BOJ 코딩테스트/Bronze
BOJ 2744번 : 대소문자 바꾸기 (C++/Python/Bronze 5)
dev스카이
2022. 8. 5. 01:31
2744번: 대소문자 바꾸기
영어 소문자와 대문자로 이루어진 단어를 입력받은 뒤, 대문자는 소문자로, 소문자는 대문자로 바꾸어 출력하는 프로그램을 작성하시오.
www.acmicpc.net
문제
영어 소문자와 대문자로 이루어진 단어를 입력받은 뒤, 대문자는 소문자로, 소문자는 대문자로 바꾸어 출력하는 프로그램을 작성하시오.
입력
첫째 줄에 영어 소문자와 대문자로만 이루어진 단어가 주어진다. 단어의 길이는 최대 100이다.
출력
첫째 줄에 입력으로 주어진 단어에서 대문자는 소문자로, 소문자는 대문자로 바꾼 단어를 출력한다.
예제 입력
WrongAnswer
예제 출력
wRONGaNSWER
문제 풀이
c++
- isupper() / islower() : 대/소문자인지 확인
- toupper() / tolower() : 대/소문자로 변환
python
- swapcase() : 대소문자로 변환
- upper() / lower() : 모든 알파벳을 대/소문자로 변환
- capitalize() : 첫 글자만 대문자로 변환
- title() : 알파벳 외의 문자(숫자, 특수기호, 띄어쓰기 등)로 구분되어 있는 알파벳들의 첫 글자만 대문자로 변환
Solution
C++
#include <iostream>
#include <string>
using namespace std;
int main() {
string str;
cin >> str;
for(int i=0; i<str.size(); i++){
if(isupper(str[i]))
str[i] = tolower(str[i]);
else
str[i] = toupper(str[i]);
}
cout << str;
return 0;
}
Python
n = input()
print(n.swapcase())