관리 메뉴

솜씨좋은장씨

[BaekJoon] 6321번 : IBM 빼기 1 (Python) 본문

Programming/코딩 1일 1문제

[BaekJoon] 6321번 : IBM 빼기 1 (Python)

솜씨좋은장씨 2021. 6. 24. 00:49
728x90
반응형

코딩 1일 1문제! 오늘의 문제는 백준의 IBM 빼기 1 입니다.

 

6321번: IBM 빼기 1

첫째 줄에 컴퓨터의 개수 n이 주어진다. 다음 줄부터 n개의 줄에는 컴퓨터의 이름이 주어진다. 컴퓨터의 이름은 최대 50글자이며, 알파벳 대문자로만 이루어져 있다.

www.acmicpc.net

Solution

def ibm_subtract(string):
    computer_name = ""
    
    for char in string:
        if char == "Z":
            computer_name += "A"
        else:
            computer_name += chr(ord(char) + 1)
    return computer_name

if __name__ == "__main__":
    for i in range(int(input())):
        string = input()
        
        computer_name = ibm_subtract(string)
        
        print(f"String #{i+1}")
        print(computer_name)
        print()

Solution 풀이

이 문제는 문자를 아스키 코드로 변경했다가 다시 돌리는 방법만 알면 풀기 쉬운 문제입니다.

ord를 사용해 문자를 아스키 코드로 변환하고

chr를 활용하여 다시 문자로 변경하면 됩니다.

"Z"일 경우만 "A"로 바꾸어주고 나머지는 chr(ord(문자) + 1) 로 변경합니다.

 

SOMJANG/CODINGTEST_PRACTICE

1일 1문제 since 2020.02.07. Contribute to SOMJANG/CODINGTEST_PRACTICE development by creating an account on GitHub.

github.com

Comments