본문 바로가기

Programmers/Go

[Programmers/Go] 서울에서 김서방 찾기

1. 문제

String형 배열 seoul의 element중 "Kim"의 위치 x를 찾아, "김서방은 x에 있다"는 String을 반환하는 함수, solution을 완성하세요. seoul에 "Kim"은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니다.

제한 사항

  • seoul은 길이 1 이상, 1000 이하인 배열입니다.
  • seoul의 원소는 길이 1 이상, 20 이하인 문자열입니다.
  • "Kim"은 반드시 seoul 안에 포함되어 있습니다.

2. 풀이

// 서울에서 김서방 찾기
package findKim

import "fmt"

func Solution(seoul []string) string {
	index := 0

	for i, value := range seoul {
		if value == "Kim" {
			index = i
			break
		}
	}

	return fmt.Sprintf("김서방은 %d에 있다", index)
}

3. 테스트

package findKim

import "testing"

func TestFindKim(t *testing.T) {
	result := Solution([]string{"Jane", "Kim"})

	if result != "김서방은 1에 있다" {
		t.Errorf("Test1: Wrong result")
		t.Errorf("expect: 김서방은 1에 있다")
		t.Error("result:", result)
	}
}