✅ 5 Variations
Solutions\nSwift []\nfinal class Solution {\n    @_optimize(speed)\n    func isPossibleToSplit(_ nums: [Int]) -> Bool {\n        nums.withUnsafeBufferPointer {\
# Solutions\n```Swift []\nfinal class Solution {\n    @_optimize(speed)\n    func isPossibleToSplit(_ nums: [Int]) -> Bool {\n        nums.withUnsafeBufferPointer {\n            var freqs = ContiguousArray<UInt8>(repeating:0, count: 101)\n            for num in $0 {\n                freqs[num] += 1\n                if freqs[num] > 2 { return false }    \n            }\n            return true\n        }\n    }\n}\n\n```\n```Swift []\nfinal class Solution {\n    @_optimize(speed)\n    func isPossibleToSplit(_ nums: [Int]) -> Bool {\n        var freqs = ContiguousArray<UInt8>(repeating:0, count: 101)\n        \n        for num in nums {\n            freqs[num] += 1\n            if freqs[num] > 2 { return false }\n        }\n        return true\n    }\n}\n```\n```Swift []\nfinal class Solution {\n    @_optimize(speed)\n    func isPossibleToSplit(_ nums: [Int]) -> Bool {\n        var freqs = [Int: UInt8]()\n        freqs.reserveCapacity(101)\n\n        for num in nums {\n            freqs[num, default: 0] += 1\n            if freqs[num] > 2 { return false}\n        }\n        return true\n    }\n}\n```\n```Swift []\nfinal class Solution {\n    @_optimize(speed)\n    func isPossibleToSplit(_ nums: [Int]) -> Bool {\n        nums.lazy\n            .reduce(into: [Int: UInt8]()) { $0[$1, default: 0] += 1 }\n            .values.first(where: { $0 > 2 }) ?? 0 == 0\n    }\n}\n```\n```Swift []\nfinal class Solution {\n    @_optimize(speed)\n    func isPossibleToSplit(_ nums: [Int]) -> Bool {\n        Dictionary(nums.map { ($0, 1) }, uniquingKeysWith: +)\n            .values.first(where: { $0 > 2 }) ?? 0 == 0\n    }\n}\n```
['Array', 'Hash Table', 'Swift']