문제
A password is strong if it has at least 8 characters, at least one uppercase letter, at least one lowercase letter and at least one digit (English letters and 0–9).
Implement is_strong_password(password).
Input
password: The password to check (ASCII characters).
Output
Return true if all rules hold, otherwise false.
제약 조건
0 ≤ length of password ≤ 100
예시
입력:
password = "Secret123"
예상 출력:
expected = True
입력:
std::string password = "Secret123";
예상 출력:
bool expected = true;
입력:
string password = "Secret123";
예상 출력:
bool expected = true;
설명
9 characters with uppercase S, lowercase letters and digits: strong.
입력:
password = "password1"
예상 출력:
expected = False
입력:
std::string password = "password1";
예상 출력:
bool expected = false;
입력:
string password = "password1";
예상 출력:
bool expected = false;
설명
There is no uppercase letter, so it is not strong.
접근 방법
먼저 스스로 풀어 본 뒤 힌트를 하나씩 열어 보세요.
힌트 1
비밀번호는 여러 독립 조건을 모두 만족해야 합니다.
힌트 2
길이를 확인하면서 대문자, 소문자, 숫자를 봤는지 함께 추적하세요.
힌트 3
빈 문자열이나 너무 짧은 문자열은 혼합 문자가 있어도 바로 실패입니다.
예상 복잡도
시간 O(n), 추가 공간 O(1)
참고 자료
이 문제는 CodeUtility에 맞게 수정되었습니다. 위의 설명과 제한 조건을 따르세요.