CF1497C2.k-LCM (hard version)
普及/提高-
通过率:0%
时间限制:1.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
It is the hard version of the problem. The only difference is that in this version 3≤k≤n.
You are given a positive integer n. Find k positive integers a1,a2,…,ak, such that:
- a1+a2+…+ak=n
- LCM(a1,a2,…,ak)≤2n
Here LCM is the least common multiple of numbers a1,a2,…,ak.
We can show that for given constraints the answer always exists.
这是该问题的困难版本。唯一的区别在于本版本中 3≤k≤n。
给定一个正整数 n,请找出 k 个正整数 a1,a2,…,ak,满足:
- a1+a2+…+ak=n
- LCM(a1,a2,…,ak)≤2n
其中 LCM 表示数字 a1,a2,…,ak 的最小公倍数。
我们可以证明:在给定约束条件下,答案一定存在。
输入格式
The first line contains a single integer t (1≤t≤104) — the number of test cases.
The only line of each test case contains two integers n, k (3≤n≤109, 3≤k≤n).
It is guaranteed that the sum of k over all test cases does not exceed 105.
第一行包含一个整数 t(1≤t≤104)—— 表示测试用例的数量。
每个测试用例仅一行,包含两个整数 n 和 k(3≤n≤109,3≤k≤n)。
保证所有测试用例的 k 值之和不超过 105。
输出格式
For each test case print k positive integers a1,a2,…,ak, for which all conditions are satisfied.
对于每个测试用例,输出 k 个正整数 a1,a2,…,ak,使得所有条件均被满足。
输入输出样例
输入#1
2 6 4 9 5
输出#1
1 2 2 1 1 3 3 1 1
输入解题思路,AI测评打分。不知道怎么写?