当前位置:网站首页>B. Same Parity Summands
B. Same Parity Summands
2022-08-10 20:44:00 【秦小咩】
B. Same Parity Summands
B. Same Parity Summands
time limit per test
1 second
memory limit per test
256 megabytes
input
standard input
output
standard output
You are given two positive integers nn (1≤n≤1091≤n≤109) and kk (1≤k≤1001≤k≤100). Represent the number nn as the sum of kk positive integers of the same parity (have the same remainder when divided by 22).
In other words, find a1,a2,…,aka1,a2,…,ak such that all ai>0ai>0, n=a1+a2+…+akn=a1+a2+…+ak and either all aiai are even or all aiai are odd at the same time.
If such a representation does not exist, then report it.
Input
The first line contains an integer tt (1≤t≤10001≤t≤1000) — the number of test cases in the input. Next, tt test cases are given, one per line.
Each test case is two positive integers nn (1≤n≤1091≤n≤109) and kk (1≤k≤1001≤k≤100).
Output
For each test case print:
- YES and the required values aiai, if the answer exists (if there are several answers, print any of them);
- NO if the answer does not exist.
The letters in the words YES and NO can be printed in any case.
Example
input
Copy
8 10 3 100 4 8 7 97 2 8 8 3 10 5 3 1000000000 9
output
Copy
YES 4 2 4 YES 55 5 5 35 NO NO YES 1 1 1 1 1 1 1 1 NO YES 3 1 1 YES 111111110 111111110 111111110 111111110 111111110 111111110 111111110 111111110 111111120
=========================================================================
分别讨论奇数偶数情况,奇数的话,先都放上1,然后每个数字再分别填上2,保证奇偶性相同,这就要求剩下的数字必须是偶数,否则无法构造,输出的时候只需要把全部2都加在一个位置上即可。然后讨论偶数的情况,先都放上2,剩下的必须也是2的倍数。
#include<iostream>
#include<cstdio>
#include<cstring>
# include<iomanip>
#include<algorithm>
#define mo 998244353;
using namespace std;
typedef long long int ll;
int main()
{
int t;
cin>>t;
while(t--)
{
int n,k;
cin>>n>>k;
if(k>n)
{
cout<<"NO"<<endl;
}
else if(k==n)
{
cout<<"YES"<<endl;
for(int i=1;i<=n;i++)
{
cout<<1<<" ";
}
cout<<endl;
}
else
{
int flag1=0,flag2=0;
int temp1=n-k;
if(temp1<0||temp1%2)
flag1=1;
int temp2=n-2*k;
if(temp2<0||temp2%2)
flag2=1;
if(flag1&&flag2)
{
cout<<"NO"<<endl;
}
else
{
cout<<"YES"<<endl;
if(!flag1)
{
for(int i=1;i<k;i++)
{
cout<<1<<" ";
}
cout<<1+temp1<<endl;
}
else
{
for(int i=1;i<k;i++)
{
cout<<2<<" ";
}
cout<<2+temp2<<endl;
}
}
}
}
return 0;
}
边栏推荐
- "POJ 3666" Making the Grade problem solution (two methods)
- ACM MM 2022 统一归一化:加速Transformer工业部署的归一化方法
- Transferrin (TF) Modified Paclitaxel (PTX) Liposomes (TF-PTX-LP) | Transferrin (Tf) Modified Curcumin Liposomes
- Are you hungry - Institution tree radio
- [mysql] 深入分析MySQL版本控制MVCC规则
- 单选点击可取消功能
- LeetCode 1-10题
- Transferrin-modified vincristine-tetrandrine liposomes | transferrin-modified co-loaded paclitaxel and genistein liposomes (reagents)
- Implementation of graceful exit in Golang
- leetcode 84.柱状图中最大的矩形 单调栈应用
猜你喜欢
【语义分割】2015-UNet MICCAI
Knowledge map Knowledge Graph
win10 xbox录屏功能不能录声音怎么办
2020 ICPC Shanghai Site G
Mark!画出漂亮的神经网络图!神经网络可视化工具集锦搜集
(10) Sequence and deserialization of image data
A fullGC problem troubleshooting caused by groovy
双 TL431 级联振荡器
@Autowired annotation --required a single bean, but 2 were found causes and solutions
Tf ferritin particles contain cisplatin / oxaliplatin / doxorubicin / methotrexate MTX / paclitaxel PTX and other drugs
随机推荐
Web3中值得关注的基础设施
验证码倒计时自定义hooks
工程师应该怎么学习
mysql----group by、where以及聚合函数需要注意事项
关于 NFT 版权保护的争议
图扑智慧电力可视化大屏,赋能虚拟电厂精准减碳
机器学习笔记:t-SNE
UE4 - 河流流体插件Fluid Flux
【图像分类】2018-MobileNetV2
姜还是老的辣,看看老战哥的老底儿和严谨劲儿
组合导航精度分析
Apple Font Lookup
[Golang]用反射让你的代码变优美
PostgreSQL — Installation and Common Commands
设备管理中数据聚类处理
【ACM】dp专场训练
数据标注太昂贵?这个方法可以用有限的数据训练模型实现基于文本的ReID!
链表应用----约瑟夫问题
A fullGC problem troubleshooting caused by groovy
ACM MM 2022 统一归一化:加速Transformer工业部署的归一化方法