알고리즘 풀이 방법입니다.
문제(Problem) -> 생각(Think) -> 해결책(Solution) -> 리뷰(Review) 를 통해서 정리해서 작성합니다.
Problem📄
https://programmers.co.kr/learn/courses/30/lessons/12919
코딩테스트 연습 - 서울에서 김서방 찾기
String형 배열 seoul의 element중 "Kim"의 위치 x를 찾아, "김서방은 x에 있다"는 String을 반환하는 함수, solution을 완성하세요. seoul에 "Kim"은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니
programmers.co.kr
Think🤔
"Kim" 이라는 단어를 String의 서울 배열에서 찾으면 된다.
처음에는 ==로 찾으려고 했지만 if문을 안타서 왜 안타나 고민한 결과
문자열의 비교는 equals가 맞다 생각하여 equals를 사용해서 정답을 찾을 수 있었다.
Solution✍
class Solution {
public String solution(String[] seoul) {
String answer = "";
int num = 0;
for(int i=0; i<seoul.length; i++){
if(seoul[i].equals("Kim")){
num = i;
break;
}
}
answer = "김서방은 " + String.valueOf(num) + "에 있다";
return answer;
}
}
Review🤩
처음에 asList를 이용해서 contains로 찾으려고 했다.
하지만 contains는 true 나 false를 알려주는 거지 그럼 몇 번째 인지 알수는 없다.
다른 사람의 풀이를 본 결과 indexOf를 이용해서 몇 번째 인지 확인하는 코드를 확인하고 직접 작성해보았다.
import java.util.Arrays;
class Solution {
public String solution(String[] seoul) {
int x = Arrays.asList(seoul).indexOf("Kim");
return "김서방은 " + x + "에 있다";
}
}
'Algorithm' 카테고리의 다른 글
[구름] 3과 5의 배수 (0) | 2021.12.25 |
---|---|
[구름] 홀짝 판별 (0) | 2021.12.25 |
[프로그래머스] [1차] 비밀지도 (0) | 2021.12.12 |
[프로그래머스] 문자열 다루기 기본 (0) | 2021.12.11 |
[프로그래머스] 문자열 내 마음대로 정렬하기 (0) | 2021.12.07 |