Код: Выделить всё
2
2
2
Код: Выделить всё
2
3
2
Код: Выделить всё
3 3
4
15
2
11
15
11
Код:
Код: Выделить всё
"""
This function solves a test case.
Parameters:
k : int - number of transmission frequencies
n : int - number of bluetooth devices
fs : array-like - array of size (k,) with a list of transmission
frequencies
ms : array-like - array of size (n,) with a list of bluetooth device signal
frequencies
Returns a list of integers of size (n,) indicating the answers for each bluetooth devices
"""
def solve(k,n,fs,ms):
results = []
for m in ms:
# Find the index of the closest transmission frequency
closest_idx = [i for i, f in enumerate(fs) if abs(f - m) == min(abs(f - m) for f in fs)]
# Handle multiple closest frequencies: choose the lowest
if len(closest_idx) > 1:
closest_idx = min(closest_idx)
# If a valid index is found, append the corresponding transmission frequency to the results
if closest_idx is not None:
results.append(fs[closest_idx])
else:
# Handle the case where no closer frequency is found
results.append(-1) # Or another value to indicate no match
return results
def main():
k,n = list(map(int,input().split(" ")))
fs = sorted([int(input()) for i in range(k)])
ms = [int(input()) for i in range(n)]
ans = solve(k,n,fs,ms)
print("\n".join(list(map(str,ans))))
if __name__ == "__main__":
main()
У вас есть N устройств Bluetooth для тестироваться по одному. Для каждого устройства Bluetooth, представленного в зоне тестирования, все K частот будут работать одновременно. Вы должны подсчитать, сколько частот из K частот будет подтверждать каждое устройство.
Формат ввода
Ввод начинается со строки, содержащей два целых числа, разделенных пробелами. и , указывающие количество частот и количество устройств Bluetooth соответственно.
K следуют строки, каждая из которых содержит одно целое число fᵢ , указывающий частоту i сигнала передачи, как описано в условии задачи.
N строк, каждая из которых содержит один целое число mⱼ, указывающее частоту входа jth устройства в зону тестирования.
Ограничения
1 ≤ K, N ≤ 3 * 10⁵
1 ≤ fᵢ, mⱼ ≤ 10⁹
Формат вывода
Для каждого из N устройств Bluetooth выведите строку, содержащую одно целое число, указывающее, на скольких частотах K они могут установить связь.>
Подробнее здесь: https://stackoverflow.com/questions/786 ... ong-output