Sobes.tech
Middle+

Valósítson meg egy olyan függvényt, amely []any és delta int típusokat fogad. Csak az egyedi számok (int) első előfordulásait kell növelni delta értékkel. Más típusokat és ismétlődő számokat változatlanul kell hagyni. A függvénynek vissza kell adnia a frissített szeletet és 2 számot: updated — hány egyedi szám változott, duplicates — hány numerikus elem volt duplikátum func IncrementUniqueIntsInMixed(xs []any, delta int) ([]any, int, int) { // a kódod }

sobes.tech MI

Válasz az MI-től

go func IncrementUniqueIntsInMixed(xs []any, delta int) ([]any, int, int) { seen := make(map[int]bool) updated := 0 duplicates := 0

for i, v := range xs {
	val, ok := v.(int)
	if !ok {
		// nem szám, kihagyjuk
		continue
	}

	if !seen[val] {
		// első előfordulása egyedi szám — növeljük
		xs[i] = val + delta
		seen[val] = true
		updated++
	} else {
		// ismétlődő szám — duplikátumnak számít
		duplicates++
	}
}

return xs, updated, duplicates

}