func countTaskOfNumber(n: Int, m: Int , start: Array<Int>, end: Array<Int>,query:Array<Int>) -> Array<Int>? {
guard n == start.count , m == query.count else {
print("error")
return nil
}
var purpleArr = [(Int, Int)]()
for (index, startNum) in start.enumerated() {
let purple : (Int, Int) = (startNum, end[index])
purpleArr.append(purple)
}
let purpleSort = purpleArr.sorted { (s1, s2) -> Bool in
return s1.0 < s2.0
}
print("排序好的 purple : \(purpleSort)")
var outPutArr = [Int]()
var outPutDic = [Int:Int]() //缓存dictionary
for (_, task) in query.enumerated() {
var outNumber = 0
if let cacheNumber = outPutDic[task] {
outNumber = cacheNumber
print("task = \(task), 缓存值为 \(cacheNumber)")
}else{
for (_, purpleItem) in purpleSort.enumerated() {
guard task >= purpleItem.0 else {
break
}
if task < purpleItem.1 {
outNumber += 1
}
}
}
outPutDic[task] = outNumber
outPutArr.append(outNumber)
}
print("输出数组:\(outPutArr)")
return outPutArr
}
task_number_count-swift
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- https://leetcode.com/problems/palindrome-number/descripti...
- 【题目描述】 Give you an integer array (index from 0 to n-1, wh...
- 原题 给定一个整数数组(下标由 0 到 n-1, n 表示数组的规模,取值范围由 0 到10000)。对于数组中的...
- 场景描述 假设你创建了一个文件,并写入了一些内容,然后通过git add和git commit将此变更提交。提交之...