500error
[Cos Pro 1급, Python] 2차 9번 : 비밀번호 검사 본문
반응형
문제
주어진 비밀번호가 안전한지 아닌지 판단하려합니다. 비밀번호의 안전 여부는 다음 규칙으로 판단합니다.
- 연속된 3자리 이상의 알파벳 혹은 숫자를 사용할 수 없습니다. (abc, cba, 012, 987 등)
비밀번호에 사용할 문자열 password가 매개변수로 주어질 때, 주어진 문자열이 위 규칙에 맞으면 true를, 맞지 않으면 false를 return 하도록 solution 함수를 작성했습니다. 그러나, 코드 일부분이 잘못되어있기 때문에, 몇몇 입력에 대해서는 올바르게 동작하지 않습니다. 주어진 코드에서 한 줄만 변경해서 모든 입력에 대해 올바르게 동작하도록 수정하세요.
코드
def solution(password):
length = len(password)
for i in range(length - 2):
first_check = ord(password[i - 1]) - ord(password[i])
second_check = ord(password[i]) - ord(password[i+1])
if first_check == second_check and (first_check == 1 or first_check == -1):
return False
return True
password1 = "cospro890"
ret1 = solution(password1)
print("solution 함수의 반환 값은", ret1, "입니다.")
password2 = "cba323"
ret2 = solution(password2)
print("solution 함수의 반환 값은", ret2, "입니다.")
반응형
'알고리즘 > 파이썬' 카테고리의 다른 글
[Cos Pro 1급, Python] 3차 1번 : 배열을 회전시켜보세요 (1) | 2024.02.28 |
---|---|
[Cos Pro 1급, Python] 2차 10번 : 0들을 0으로 만들기 (0) | 2024.02.28 |
[Cos Pro 1급, Python] 2차 8번 : 규칙에 맞는 배열 구하기 (0) | 2024.02.28 |
[Cos Pro 1급, Python] 2차 7번 : 거스름돈 구하기 (0) | 2024.02.28 |
[Cos Pro 1급, Python] 2차 6번 : 로봇을 움직여주세요 (0) | 2024.02.28 |
Comments