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
}