2026-01-16 21:00:38 +09:00

36 lines
799 B
Swift

import Foundation
func solve() {
guard let _ = Int(readLine() ?? ""),
let input = readLine(),
let nums = input.split(separator: " ").compactMap({Int($0)}) as? [Int],
let MAX_NUM = nums.max()
else { return }
var score: [Int] = Array(repeating: 0, count: MAX_NUM+1)
var cards: [Bool] = Array(repeating: false, count: MAX_NUM+1)
for n in nums {
cards[n] = true
}
for n in nums {
for i in stride(from: 2*n, through: MAX_NUM, by: n) {
if cards[i] {
score[n] += 1
score[i] -= 1
}
}
}
var result: [String] = []
for n in nums {
result.append(String(score[n]))
}
print(result.joined(separator: " "))
}
solve()