반응형

Golang을 배워보고자 Golang으로 leetcode를 앞으로 하루에 한개씩 풀도록 하겠습니다

오늘 풀 문제는 FizzBuzz라는 문제이며

링크는 https://leetcode.com/explore/challenge/card/august-leetcoding-challenge/552/week-4-august-22nd-august-28th/3437/ 입니다

문제 자체는 쉬우며 1부터 N까지 중에 3으로 나눠질때 Fizz를 5로 나눠질때 Buzz를 두개 다 나눠지는 공배수일때는

FizzBuzz로 숫자를 치환하여 string 배열을 리턴하는 문제였습니다

Golang으로 풀다보니 막 기발한 코드는 생각나지 않아서 기본에 충실한 if문으로 풀어보았습니다

코드는 아래와 같습니다

func fizzBuzz(n int) []string {
    count := 1
    var datas []string
    for count <= n {
        var na3 = count % 3
        var na5 = count % 5
        if na3 == 0 && na5 == 0 {
            datas = append(datas, "FizzBuzz")
        } else if na5 == 0 {
            datas = append(datas, "Buzz")
        } else if na3 == 0 {
            datas = append(datas, "Fizz")
        } else {
            datas = append(datas, strconv.Itoa(count))

        }
        count++
    }
    return datas
}

 

읽어주셔서 감사합니다!

  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기