본문 바로가기
알고리즘/백준 solved.ac PS

[백준][solved.ac][Bronze 2][Python] 5789번 : 한다 안한다

by 빛밤하늘 2021. 4. 17.
반응형

밑의 링크는 백준에서의 문제 링크입니다.

 

5789번: 한다 안한다

첫째 줄에는 테스트 케이스의 개수 N이 주어진다. (1 ≤ N ≤ 1000) 각 테스트 케이스는 한 줄로 이루어져 있으며, 0과 1로 이루어진 문자열이 주어진다. 문자열의 길이는 항상 짝수이고, 1000보다 작

www.acmicpc.net

 

 

 

 

 

 

 

파이썬 코드와 결과입니다.

# 첫째 줄에는 테스트 케이스의 개수 N을 입력합니다.
# 1 <= N <= 1000
N = int(input())

# 테스트 케이스의 개수만큼 반복해봅니다.
for i in range(N):
    # 0과 1로 이루어진 문자열을 입력합니다.
    # 문자열의 길이는 항상 짝수이고, 1000보다 작습니다.
    string = input()
    
    # 입력한 문자열의 길이의 절반을 저장하는 변수를 선언합니다.
    half_len = int(len(string) / 2)

    # 상근이가 마지막으로 고르는 두 숫자는 입력한 문자열에서 가운데 두 숫자입니다.
    # 가운데 두 숫자가 같은 경우
    if string[half_len - 1] == string[half_len]:
        # Do-it을 출력합니다.
        print("Do-it")
    # 가운데 두 숫자가 다른 경우
    else:
        # Do-it-Not을 출력합니다.
        print("Do-it-Not")

결과

 

처음 제출할 때는 문제에서 양 끝 숫자를 고른다는 부분만 보고 string[0] == string[-1]로 구현해버려 틀렸습니다 결과가 나왔습니다.

 

 

 

※ 궁금한 부분, 이상한 점 및 오타는 댓글에 부탁드립니다.

※ 더 효율적이고 빠른 정답을 환영합니다.

반응형

댓글