1108.go 511 B

123456789101112131415161718192021222324252627282930313233343536
  1. package main;
  2. // 1108. Defanging an IP Address
  3. import (
  4. "os"
  5. "fmt"
  6. )
  7. func defangIPaddr(address string) string {
  8. var res [3+3+3+3+9]rune
  9. var i int = 0
  10. for _, c := range address {
  11. if c == '.' {
  12. res[i] = '['; i += 1
  13. res[i] = '.'; i += 1
  14. res[i] = ']'; i += 1
  15. continue
  16. }
  17. res[i] = c
  18. i += 1
  19. }
  20. return string(res[:i])
  21. }
  22. func main() {
  23. r := func (addr string) {
  24. fmt.Printf("defangIPaddr(\"%s\") -> \"%s\"\n", addr, defangIPaddr(addr))
  25. }
  26. r("1.1.1.1")
  27. r("255.100.50.0")
  28. os.Exit(0)
  29. }