티스토리 뷰

알고리즘/백준

[BAEKJOON] 2744 대소문자 바꾸기

응애~ 개발자 2022. 10. 1. 23:57
728x90
반응형

문제 요약

  • 알고리즘 분류: 문자열
  • 난이도: Bronze5
  • 문제내용:
    • 문자열 대문자를 소문자, 소문자를 대문자로 변경해서 출력하면 된다.
  • 사이트 주소: https://www.acmicpc.net/problem/2744
 

2744번: 대소문자 바꾸기

영어 소문자와 대문자로 이루어진 단어를 입력받은 뒤, 대문자는 소문자로, 소문자는 대문자로 바꾸어 출력하는 프로그램을 작성하시오.

www.acmicpc.net

접근 방법

 이번 문제는 함수 사용 하는 방법을 알면 된다.

  • 파이썬은 isLower, isUpper로 체크 한다음에 .lower(), upper()함수 사용 하면된다.
  • 자바는 문자열을 전체 대소문자 처리는 가능하는데. 이번 문제는 각 문자를 변환 하는거라서 원시적인 방법을 사용해야 한다.
    • char 문자형으로 가져와서 ASCILL 코드표를 보고 범위를 체크하면 된다.
    • 소문자를 대문자를 변경할때 +32하면되고 대문자를 소문자를 변경할때 -32하면된다. 

코드

Python

string = input()
result = ""
for char in string:
    result += char.upper() if char.islower() else char.lower()
    
print(result)

Java

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {
	
	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		String string = br.readLine();
		StringBuilder result = new StringBuilder();
		for(int i = 0; i < string.length(); i++) {
			char tmp = string.charAt(i);
			if(tmp >= 97 && tmp < 122) {
				result.append((char)(tmp - 32));
			}else {
				result.append((char)(tmp + 32));
			}
		}
		System.out.println(result.toString());
	}
	
}
728x90
반응형

'알고리즘 > 백준' 카테고리의 다른 글

[BAEKJOON] 1010 다리놓기  (0) 2022.10.04
[BAEKJOON] 1629 곱셈 - Python  (0) 2022.10.03
[BAEKJOON] 11051 이항 계수 2  (1) 2022.09.30
[BAEKJOON] 1149 RGB거리  (1) 2022.09.26
[BAEJOON] 1043 거짓말  (0) 2022.09.25
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/10   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
글 보관함