alt 思路 根据题意我们不难发现

当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;

}