728x90
반응형
힌트
더보기
- db 배열 내에 로그인 시도하는 문자열이 존재 및 일치하면 로그인 상태를 리턴한다
- id가 존재하지 않으면 fail, password가 틀리면 wrong pw를 리턴한다
정답
더보기
public static string Solution65(string[] id_pw, string[,] db)
{
LoginStatus loginStatus = LoginStatus.fail;
for(int i=0; i< db.Length / db.GetLength(1); i++){
if(id_pw[0] == db[i,0]){
if(id_pw[1]== db[i,1]) loginStatus = LoginStatus.login;
else loginStatus = LoginStatus.wrong_pw;
break;
}
}
return string.Concat(loginStatus).Replace('_',' ');
}
enum LoginStatus{
fail,
wrong_pw,
login
}
해석
더보기
enum LoginStatus{
fail,
wrong_pw,
login
}
로그인 상태를 enum LoginStatus로 만들어준다(겉멋)
LoginStatus loginStatus = LoginStatus.fail;
기본 status를 fail로 선언해준다
for(int i=0; i< db.Length / db.GetLength(1); i++){
int i는 0부터 db.length(8)/ db.GetLength(2)보다 작을 때 반복한다
db.GetLength(1)는 db가 [["rardss", "123"], ["yyoom", "1234"], ["meosseugi", "1234"]] 이렇게 한 요소에 2개씩 들어가 있기에 2를 리턴하고 db.GetLength(0)을 하면 3을 리턴한다
GetLength(0) = 행(row)
GetLength(1) = 열(row)
if(id_pw[0] == db[i,0])
id_pw[0]과 db[i,0]은 id 문자열이며 일치할 때 if문 내부로 진입한다
if(id_pw[1]== db[i,1]) loginStatus = LoginStatus.login;
id_pw[1]과 db[i,1]은 password 문자열이며 일치할 때 login status로 변경해준다.
else loginStatus = LoginStatus.wrong_pw;
패스워드가 일치하지 않는다면 wrong_pw를 리턴해준다
728x90
반응형
'C#' 카테고리의 다른 글
[프로그래머스 힌트/답/해석] 치킨 쿠폰 (0) | 2024.01.30 |
---|---|
[프로그래머스 힌트/답/해석] 등수 매기기 (0) | 2024.01.30 |
[프로그래머스 힌트/답/해석] 캐릭터의 좌표 (1) | 2024.01.30 |
[프로그래머스 힌트/답/해석] 컨트롤 제트 (0) | 2024.01.30 |
[프로그래머스 힌트/답/해석] 외계어 사전 (0) | 2024.01.30 |