import Foundation // extension Int { func powerOf2() -> Int { return self * self } } // ? let max = 8_500_000 // var testValue = 2 let startTime = Date() // var data = (2...max).map{$0} let allocationTime = Date() // while (testValue.powerOf2() <= max) { data.removeAll(where: {$0 >= testValue.powerOf2() && $0.isMultiple(of: testValue)}) testValue = data.first(where: {$0 > testValue})! } let overallTime = Date() // print(" \(data.count) : ", data) print() print(" : \(String(format: "%.2f",(allocationTime.timeIntervalSince(startTime)))) . ") print(": \(String(format: "%.2f",(overallTime.timeIntervalSince(allocationTime)))) . ") print(": \(String(format: "%.2f",(overallTime.timeIntervalSince(startTime)))) . ")
Source: https://habr.com/ru/post/450888/
All Articles