서울에서 김서방 찾기

문제정의


'김서방은 ?에 있다.'라는 형식으로 출력하면 된다. 여기서 ?는 배열에서 "Kim"이 있는 위치이다.

문제풀이


전체 코드는 다음과 같다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
public class SeoulKim {

public static void main(String[] args)
{
String[] seoul = {"Jane", "Kim"};
int idx = -1;
for(int i = 0; i < seoul.length; i++)
{
if(seoul[i].equals("Kim"))
{
idx = i;
break;
}

}
StringBuffer buff = new StringBuffer();
buff.append("김서방은 ");
buff.append(Integer.toString(idx));
buff.append("에 있다");
String answer = buff.toString();
System.out.print(answer);
}

}

배열을 순회하면서 "Kim"이 있는 위치를 찾는다. Kim을 찾는 순간 더 이상 배열을 탐색할 필요가 없으므로 break문을 통해 탈출하고 정답을 출력한다. 총 시간복잡도는 \(O(n)\)이다.

테스트