package main

import "fmt"

// BalikKata membalik urutan huruf sebuah kata atau kalimat.
// Konversi ke []rune membuat karakter multi-byte seperti "é" tetap utuh,
// bukan terpotong per byte.
func BalikKata(s string) string {
	huruf := []rune(s)
	for i, j := 0, len(huruf)-1; i < j; i, j = i+1, j-1 {
		huruf[i], huruf[j] = huruf[j], huruf[i]
	}
	return string(huruf)
}

func main() {
	fmt.Println(BalikKata("katak"))
	fmt.Println(BalikKata("belajar go"))
	fmt.Println(BalikKata("résumé"))
}
