Sobes.tech
Middle+

Կիրառեք ֆունկցիա, որը ընդունում է []any և delta int: Պետք է ավելացնել միայն առաջին հայտնաբերումները եզակի թվերի (int) վրա՝ delta-ով: Այլ տիպերը և կրկնվող թվերը թողնել առանց փոփոխության: Ֆունկցիան պետք է վերադարձնի թարմացված սլայսը և 2 թիվ: updated — քանի եզակի թիվ է փոխվել, duplicates — քանի թվային տարրեր են կրկնվել func IncrementUniqueIntsInMixed(xs []any, delta int) ([]any, int, int) { // ձեր կոդը }

sobes.tech AI

Պատասխան AI-ից

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 {
		// թիվ չէ, անցնում ենք
		continue
	}

	if !seen[val] {
		// առաջին հանդիպումը եզակի թվի — ավելացնում ենք
		xs[i] = val + delta
		seen[val] = true
		updated++
	} else {
		// կրկնվող թիվ — հաշվում ենք որպես կրկնօրինակում
		duplicates++
	}
}

return xs, updated, duplicates

}