思路
根据题意我们不难发现
当n = 1,时 答案为1,即输出 1
当n = 2时 1 + 2 != 1 * 2所以输出NO
当n = 3 时,答案为 1 2 3,即输出1 2 3
当n = 4,我们假设有答案按字典序最小排列 1 2 3 4 ,我们发现1 + 2 + 3 + 4 = 10 != 1 * 2 * 3 * 4 = 24 所以我们得出,当n>3或者n=2时直接输出NO,注意输出顺序
或者你可以再往后试试
ACCODE
void solve() {
int n;
cin>>n;
if(n==1){
cout<<"YES"<<endl;
cout<<'1'<<endl;
return ;
}
else if(n==3)
{
cout<<"YES"<<endl;
cout<<"1 2 3"<<endl;
return ;
}
else cout<<"NO"<<endl;
}

京公网安备 11010502036488号