TGViewer
Golang | LeetCode Golang | LeetCode @easy_golang_task · 3.57K subscribers
Post #1619 223
Задача: 647. Palindromic Substrings
Сложность: medium

Реализуйте структуру данных MapSum, поддерживающую:

- Insert(key string, val int) — вставляет или обновляет значение по ключу.
- Sum(prefix string) — возвращает сумму значений всех ключей, начинающихся с указанного префикса.

Пример:
mapSum := Constructor()
mapSum.Insert("apple", 3)
mapSum.Sum("ap") // 3
mapSum.Insert("app", 2)
mapSum.Sum("ap") // 5 (3 + 2)


👨‍💻 Алгоритм:

1⃣Хранение данных
Используем map[string]int для хранения всех ключей и их значений.

2⃣Операция Insert
Если ключ уже существует — просто перезаписываем новое значение.

3⃣Операция Sum
Проходим по всем ключам. Если ключ начинается с prefix, прибавляем его значение к результату.

😎 Решение:
package main

import "strings"

type MapSum struct {
mapData map[string]int
}

func Constructor() MapSum {
return MapSum{mapData: make(map[string]int)}
}

func (this *MapSum) Insert(key string, val int) {
this.mapData[key] = val
}

func (this *MapSum) Sum(prefix string) int {
ans := 0
for key, val := range this.mapData {
if strings.HasPrefix(key, prefix) {
ans += val
}
}
return ans
}


Ставь 👍 и забирай 📚 Базу знаний
More from @easy_golang_task
  1. Oct 9, 2026Задача: 336. Palindrome Pairs Сложность: hard Вам дан массив уникальных строк words, индек…
  2. Oct 7, 2026🔥 Скрытые вакансии с удаленной работой для Golang разработчика, которые нигде больше не п…
  3. Oct 5, 2026Задача: 897. Increasing Order Search Tree Сложность: easy Задав корень дерева двоичного по…
  4. Oct 4, 2026Задача: 200. Number of Islands Сложность: medium Дана двумерная бинарная сетка размером m…
  5. Oct 4, 2026Задача: 313. Super Ugly Number Сложность: medium Супер некрасивое число — это положительно…
  6. Oct 3, 2026Задача: 1166. Design File System Сложность: medium Вам нужно разработать файловую систему,…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →