728x90
코드 힌트
- HashMap 사용하기:
- HashMap을 사용하지 않고, for 루프를 사용하여 사용자 정보를 직접 검색할 수도 있습니다.
- HashMap을 사용하면 사용자 정보를 효율적으로 저장하고 검색할 수 있습니다.
- HashMap<String, String>을 사용하여 사용자 ID를 키로, 비밀번호를 값으로 저장합니다.
- 데이터베이스 배열 순회:
- db 배열을 순회하면서 사용자 ID와 비밀번호를 HashMap에 추가합니다.
- 각 사용자의 ID를 키로, 비밀번호를 값으로 저장하여 나중에 쉽게 검색할 수 있습니다.
- 비밀번호 확인:
- id_pw[0] (사용자 ID)를 키로 HashMap에서 비밀번호를 검색합니다.
- 비밀번호가 존재하지 않으면 "fail"을 반환합니다.
- 비밀번호가 다르면 "wrong pw"를 반환합니다.
- 비밀번호가 맞으면 "login"을 반환합니다.
정답은 더보기 클릭
더보기
import java.util.*;
class Solution {
public String solution(String[] id_pw, String[][] db) {
// 사용자 정보를 저장할 HashMap을 생성합니다.
HashMap<String,String> userMap = new HashMap<>();
// 데이터베이스 배열을 순회하며 HashMap에 사용자 정보를 추가합니다.
for (String[] userInfo : db) {
userMap.put(userInfo[0], userInfo[1]); // 사용자 ID를 키로, 비밀번호를 값으로 저장합니다.
}
// 주어진 ID로 비밀번호를 가져옵니다.
String pw = userMap.get(id_pw[0]);
// 사용자 ID가 존재하지 않는 경우 "fail"을 반환합니다.
if (pw == null) {
return "fail";
}
// 비밀번호가 맞지 않는 경우 "wrong pw"를 반환합니다.
if (!id_pw[1].equals(pw)) {
return "wrong pw";
}
// 비밀번호가 맞는 경우 "login"을 반환합니다.
return "login";
}
}
728x90
'프로그래머스(Java) > Level 0' 카테고리의 다른 글
[프로그래머스] 저주의 숫자 3 (0) | 2024.08.17 |
---|---|
[프로그래머스] 등수 매기기 (0) | 2024.08.16 |
[프로그래머스] OX퀴즈 (0) | 2024.08.16 |
[프로그래머스] 외계어 사전 (0) | 2024.08.16 |
[프로그래머스] 평행 (0) | 2024.08.16 |