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

[백준][solved.ac][Bronze 2][Python] 17838번 : 커맨드

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

17838번: 커맨드

T개 각각의 테스트 케이스에 대해 윤표가 좋아하는 커맨드이면 1, 그렇지 않으면 0을 한 줄에 하나씩 출력한다.

www.acmicpc.net

 

 

 

 

 

 

 

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

# 첫 줄에는 테스트 케이스의 개수 T를 입력합니다.
# 1 <= T <= 100
T = int(input())

# 테스트 케이스의 개수만큼 반복합니다.
for i in range(T):
    # 길이가 N이고, 알파벳 대문자로만 이루어진 문자열을 입력합니다.
    # N은 10,000보다 작거나 같은 자연수입니다.
    string = input()

    # 커맨드의 조건인 1. 문자열의 길이는 7이고,
    # 문자열은 정확히 2가지 종류의 문자로 이루어져 있으며
    # AABBABB 형식을 만족한다면
    if len(string) == 7 and (string[0] == string[1] == string[4]) and (string[2] == string[3] == string[5] == string[6]) and (string[0] != string[2]):
        # 1을 출력합니다.
        print(1)
    # 위의 조건을 만족하지 않는다면
    else:
        # 0을 출력합니다.
        print(0)

결과

 

 

 

처음에 제출했을 때는 커맨드의 조건 중 문자열은 정확히 2가지 종류의 문자로 이루어져 있어야한다는

(string[0] != string[2])을 if 조건문에서 빠져있어서 AAAAAAA일 때도 조건을 맞다고 인식하는 코드였습니다.

그래서 틀렸습니다 결과가 나왔습니다.

 

그리고 결과적으로 맞춘 문제이지만, if문을 저렇게 길게 적는게 맞는 풀이법인지는 모르겠습니다...

 

 

 

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

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

반응형

댓글