CF1839C Insert Zero and Invert Prefix 题解

· · 题解

CF1839C Insert Zero and Invert Prefix 题解

Solution

首先,a_n=1 时无解,特判一下

考虑倒序恢复原序列 b,明显对于 a_i,若 a_i=a_{i-1},则对于 b 仅需一个操作 0,因为对于任意操作 k(k>0) 一定会对序列进行翻转再添加 0

a_i \ne a_{i-1},则仅需一个操作 i-1

Code

#include<bits/stdc++.h>
using namespace std;
int a[100005],ans[100005];
//class ikun {
    //???????????????¤?¤????????????
    // ...............................................................................................................................................................
    // ....................................................................................................................]*.........................................
    // ..........................................................................................................*]OOOOOOOOOOO]`......................................
    // .......................................................................................................,/OOOO@@OOOOOO@@@OOOOO].................................
    // ....................................................................................................*]OOOOO@@@@OOOO@@@@O@@OOOOOo`..............................
    // ..................................................................................................*/OOOOOOO@@@@@@@@@@@OOOOOOOOOOOO`............................
    // ................................................................................................,oOOOOOOOO@@@@@@@@@O@@OOO@@OOOOOOOO\...........................
    // ...............................................................................................=OOOOOOOO@@@@@@@@@@@@@@@@@@@@OOO@@@OO\..........................
    // ...............................................................................................OO@OOOO@@@@@@@@@@@@@@@@@@@@@@@@@@@@@OOo*........................
    // ...............................................................................................OO@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@OO`.......................
    // ...............................................................................................OO@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@O^.......................
    // ...............................................................................................=O@@@@@@@@@@@@@@@@@@@@@@@OO@@@@@@@@@@@@O^.......................
    // ................................................................................................@@@@@@@@@@@@@@@@@@@@@@O^,OO@@@@@@@@@@@@^.......................
    // ............................................................................]]/OOO]..   .O\..]]O@@@@@@@@@@@@@@@@@@@@OO^*/OO@@@@@@@@@@@@^.......................
    // ......................................................................]/@@@@@@@@@@@@@.   .\@@@@@@@@@@@@@O@@@@@@@@@@@O@o/@ooO@@@@@@@@@@O`.......................
    // ..................................................................,/@@@@@@@@@@@@@@@@@@`    =@@@@@@@@@@@@@@@@@@O@@@@@@@o*OooOO@O@@@@@@@/........................
    // ................................................................=@@@@@@@@@@@@@@@@@@@@@@^    =@@@@@@@@@@@@@@@@@@@@OO@@@@Oo`ooOOoOO@@@@@`........................
    // ..............................................................,@@@@@@@@@@@@@@@@@@@@@@@@@^    =@@@@@@@@@@@@@@@@@@@@@@@@OooooooooooOOOO`.........................
    // ............................................................,@@@@@@@@@@@@@@@@@@@@@@@@@@@@\.   =@@@@@@@@@@@@@@@@@@@@@@@@@Oooooooo`..............................
    // .........................................................../@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\   .=@@@@@@@@@@@@@@@@@@@@@@@@@Oooooo^...............................
    // ..........................................................@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\    =@@@@@@@@@@@@@@@@@@@@@@@@@Oooo^................................
    // ......................................................../@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@^.   \@@@@@@@@@@@@@@@@@@@@@@@@@Oo/.................................
    // ......................................................./@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@^ ...@@@@@@@@@@@@@@@@@@@@@@@@@@^..................................
    // ......................................................=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@` ..,@@@@@@@@@@@@@@@@@@@@@@@@@@^.................................
    // ...................................................../@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@....=@@@@@@@@@@@@@@@@@@@@@@@@@@\................................
    // .................................................../@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@^....@@@@@@@@@@@@@@@@@@@@@@@@@@@@`..............................
    // ................................................./@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@....=@@@@@@@@@@@@@@@@@@@@@@@@@@@@^.............................
    // ...............................................,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@^...,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\............................
    // ............................................../@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@....\@@@@@@@@@@@@@@@@@@@@@@@@@@@@@^...........................
    // .............................................@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@....=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@^..........................
    // ...........................................,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@^....@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@^.........................
    // ........................................../@@@@@@@@@@@@@@@@@@@@@@.@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\....\/`...,\@@@@@@@@@@@@@@@@@@@@@@@@^........................
    // .........................................@@@@@@@@@@@@@@@@@@@@@@@/.=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@...]o^.../@@\/@@@@@@@@@@@@@@@@@@@@@@@^.......................
    // .......................................,@@@@@@@@@@@@@@@@@@@@@@@/..=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@^/OooO.,@@@@@@^=@@@@@@@@@@@@@@@@@@@@@O.......................
    // ......................................,@@@@@@@@@@@@@@@@@@@@@@/.....=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@OOOoOOO@@@@@@@@\=@@@@@@@@@@@@@@@@@@@@@.......................
    // ......................................@@@@@@@@@@@@@@@@@@@@@O`......@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\OOOO@@@@@@@@@@@@=@@@@@@@@@@@@@@@@@@@@.......................
    // ...................................../@@@@@@@@@@@@@@@@@@@@^.......@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@^....@@@@@@@@@@@@@@,@@@@@@@@@@@@@@@@@@@^......................
    // .....................................@@@@@@@@@@@@@@@@@@@@@.......@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@....=@@@@@@@@@@@@@@\,@@@@@@@@@@@@@@@@@@^......................
    // .....................................O@@@@@@@@@@@@@@@@@@@@..../@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@/....=@@@@@@@@@@@@@@@\,@@@@@@@@@@@@@@@@@^......................
    // .....................................O@@@@@@@@@@@@@@@@@@@@...=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@^....@@@@@@@@@@@@@@@@@^,@@@@@@@@@@@@@@@@^......................
    // .....................................,@@@@@@@@@@@@@@@@@@@@@O.@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@....=@@@@@@@@@@@@@@@@@@^,@@@@@@@@@@@@@@@@......................
    // .......................................O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@^..../@@@@@@@@@@@@@@@@@@@`,@@@@@@@@@@@@@@@^.....................
    // ........................................\@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@^....@@@@@@@@@@@@@@@@@@@@@.=@@@@@@@@@@@@@@@.....................
    // .........................................,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@....=@@@@@@@@@@@@@@@@@@@@@^.\@@@@@@@@@@@@@/.....................
    // ...........................................\@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@/....=@@@@@@@@@@@@@@@@@@@@@@`.@@@@@@@@@@@@/......................
    // ............................................,O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@^....@@@@@@@@@@@@@@@@@@@@@@@\.=@@@@@@@@@@@`......................
    // ..............................................,O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@....,@@@@@@@@@@@@@@@@@@@@@@@@`.\@@@@@@@@@@\......................
    // ................................................*[O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@....=@@@@@@@@@@@@@@@@@@@@@@@@^..@@@@@@@@@@@......................
    // ....................................................\O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@^....@@@@@@@@@@@@@@@@@@@@@@@@@@..@@@@@@@@@@@^.....................
    // .......................................................,\@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@^....@@@@@@@@@@@@@@@@@@@@@@@@@@*.=@@@@@@@@@@^.....................
    // ........................................................,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@....=@@@@@@@@@@@@@@@@@@@@@@@@@@^*=@@@@@@@@@/......................
    // .........................................................=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@....=@@@@@@@@@@@@@@@@@@@@@@@@@@^*=@@@@@@@/........................
    // ..........................................................,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@OOOo@@@@@@@@@@@@@@@@@@@@@@@@@@@@*=@@@@@@@.........................
    // .............................................................,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@^O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@^/@@@@@@@.........................
    // ..............................................................=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@OOO@@@@@@@@@@@@@@@@@@@@@@@@@@@@@^O@@@@@@@.........................
    // ..............................................................O@OOOOOOO@@@@@@@@@@@@@@@@@@@@@@O[O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\@@@@@@@^.........................
    // ..........................................................]/OoO@OOOOOOOOOOOOOOO@@@@@@@@@@@@@O**OO@@@@@@@@@@@@@@@@@@@@@@@@@@@@O@@@@@@/..........................
    // .......................................................,@@@@oOO@OOOOOOOOOOOOOOOOOOOOOOO@@OOOO]/OO@OOOO@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@...........................
    // ....................................................../@@@OoooOooOOOOOOOOOOOOOOOOOOOOOO@OOOOOOOOO@OO@OOO@@@@@@@@@@@@@@@@@@@@@@@@@@@............................
    // .....................................................,@@@OoOOooOOooOOOOOOOOOOOOOOOOOOOO@OO@OOOO@@OOO@OOO@OO@@@@@@@@@@@@@@@@@@@@@@/.............................
    // ...................................................../@@@oOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO@@@@@@@@@@@@@/[................................
    // .....................................................@@@OoOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO@@@@@`....................................
    // ....................................................=@@@OOOoOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO@@^.....................................
    // ....................................................=@OoOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO@@@`....................................
    // ..................................................../OoooooooOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO@@@O\...................................
    // ....................................................OoOOOOooooooooOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO@OOO...................................
    // ..................................................,oOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO\..................................
    // .................................................,OOOOOooOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO`...............................
    // ................................................,ooOOOOOOOoOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO`.............................
    // ...............................................=OoooooOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO@@OOOOOOOOOo\............................
    // ............................................../OooooooOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO@@@@@@OOOOOOOOOOOOOO`..........................
    // ............................................./oooOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO@OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOo.........................
    // ............................................/ooooooOOOOOOOOOOOOOOOOOOOOOOOOOOOO@OO@OOOOOOO@OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO^.......................
    // .........................................../oOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO@@@OO@@O@@OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO^.......................
    // ........................................../oOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO@OOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO^.......................
    // .........................................ooooooOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO^.......................
    // .......................................,oooOOOOOOOOOOOOOOOOOOOO@@@@@OOOOOOOOO@@@@/[.........[O@@OOOOOOOOOOO@@@@@OOOOOOOOOOOOOOOOOOOOOOO^.......................
    // ......................................,ooooooOOOOOOOOOOOOOOOOOOOOOOOOO@@@@@@@O`................,OOO@@@@@@@@@@@@@@@OOOOOOOOOOOOOOOOOOOOOo.......................
    // .....................................,oooOOoooooOOOOOOOOOOOO@@@@@@@@@@@@@@@O`....................,OO@@@@@@@@@@@@OO@@OOOOOOOOOOOOOOOOOOOOo......................
    // ....................................=oooOOOOOOOOOOOOOOOOOOOOOOOOOOO@@@@@@O`........................,\O@@@@@@@OOOOOOOOOOOOOOOOOOOOOOOOOOOO^.....................
    // ...................................=ooooOOOOOOOOOOOOOOOOOO@@@@@@@@@@@@@@`............................,OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO^....................
    // ..................................=ooOOOOOOOOOOOOOOOOOOOOOOOOOOO@@@@@O`................................,O@@OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO`...................
    // .................................,ooOOOOOOOOOOOOOOOOOOOOOOOOOOO@@OO@^....................................\OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO`..................
    // .................................oooOOOOOOOOOOOOOOOOOOOOOOOOOOO@OOO`......................................,OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO..................
    // ................................=ooOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO^..........................................\OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO\.................
    // ................................OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO.............................................,OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO^................
    // ...............................=oOOOOOOOOOOOOOOOOOOOOOOOOO@@OO/................................................OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO................
    // ..............................*oOOOOOOOOOOOOOOOOOOOOOOOOOOOO@/..................................................O@OOOOOOOOOOOOOOOOOOOOOOOOOOOOO`...............
    // .............................*/OOOOOOOOOOOOOOOOOOOOOOOOOO@@@/....................................................\@@OOOOOOOOOOOOOOOOOOOOOOOOOOOO...............
    // ...........................*/OOooooooooooOOOOOOOOOOO@@@@@@@/.......................................................O@@@@@@@OOOOOOOOOOOOOOOOOOOOO^..............
    // ...........................OOOOOOOO@@@@@@@@@@@@@@@@@@@@@@@/.........................................................,O@@@@@@@@OOOOOOOOOOOOOOOOOOO^.............
    // ..........................=oooOOOOOOOOOOOOOOOOOO@@@@@@@@/.............................................................=@@@@@@@@@@@@@@@@OOOOOOOoooO`............
    // ..........................ooooooOOOOOOOOOOOO@@@@@@@@@@/................................................................,@@OOOOOOOOOOOOOOOOOOOOOOOOO`...........
    // ........................./OoOO@@@@@@@@@@@@@@@@@OOOOO`....................................................................\@@@@@@@@@@@@@@@@@@@OOOOOOOO`.........
    // ........................,\]o\OOOOOOOOOOOOOOOOOOOOO`........................................................................[@@@@@@OOOOO@@@@@@@@@@O@OO^.........
    // .......................,OOOOOOOOO@@@OOOOOOOO@@@@O*............................................................................\@@@@@@@OOOOOOOOOoooOO...........
    // ......................=OOooooooOOOOOOOOOOOOOOOO^...............................................................................=@@@OOOOOOOOOOoOooOOO\..........
    // .....................*oOOooooooOOOOooOOOOOOOOO...................................................................................OOOOOOOOOooooOOOOOOO..........
    // .....................=oo]]`[\ooOOoooOOOOOOO@O*...................................................................................OOOOOOOOOOOOOOOOOOoo^.........
    // ..................*.*=oo[[\ooOOOOOOO@@@@@@@@^....................................................................................OOOOOOOOOOOOOOOOOOOoo.........
    // ...................**ooooooOOOOOOOOOOOOOOOO/.....................................................................................=OOOOOOOOoooooooooooo^........
    // ...........*********/oooooOOOOOOOOOOOOOOOO/.......................................................................................=OOOOOOOOOOOOOOOOOOO^........
    // ********************[[\ooooOOOOOOOOOOOOOO/*************************...............................................................=OOOOOOOOOOOOOOOOOOOO........
    // *******************\o\oo/oOOOOOOOOOOOOOOO**************...........................................................................=OOOOOOOOOOoooooOOOOO........
    // *******************oooooo\]oOOOOOOOOOOOO^***************..........................................................................=OOOOOOOOOOOOOOOOOOOO*.......
    // *******************oooOOOOOOOOOOOOOOOOO^******************........................................................................=OOOOOOOOOOOOOOOOOOOO*.......
    // ******************,OoOOOOOOOOOOOOOOOOOO^*****************.........................................................................=OOOOOOOOOOOOOOOOOOOO*.......
    // ******************=ooooooOOOOOOOOOOOOOO^********..................................................................................=OOOOOOOOOOOOOOOOOOOO........
    // ******************oooOOoOOOOOOOOOOOOOOO...........................................................................................*OOOOOOOOOOOOOOOOOOOO*.......
    // ...............***ooOOOOOOOOOOOOOOOOOO^............................................................................................OOOOOOOOOOOOOOOOOOOO........
    // .................=oooOOOOOOOOOOOOOOOOO.............................................................................................=OOOOOOOOOOOOOOOOOOO........
    // .................=OOOOOOOOOOOOOOOOOOO^.............................................................................................=OOOOOOOOOOOOOOOOOOO........
    // .................=ooooOOOOOOOOOOOOOOO*..............................................................................................OOOOOOOOOOOOOOOOOOO........
    // ................*ooooOOOOOOOOOOOOOOO^...............................................................................................=OOOOOOOOOOOOOOOOOO........
    // ****......*.....=OOoOOOOOOOOOOOOOOOO*................................................................................................OOOOOOOOOoOOOOOOOO........
    // ................ooOOOOOOOOOOOOOOOOO/.................................................................................................=OOOOOOOOOOOOOOOOO........
    // ...............*oooOOOOOOOOOOOOOOOO*..................................................................................................OOOOOOOOOOOOOOOOO........
    // ...............=oooOOOOOOOOOOOOOOO^...................................................................................................\OOOOOOOOOOOOOOOO........
    // ...............=ooooOOOOOOOOOOOOOO*...................................................................................................,OOOOOOOOOOOOOOOO........
    // ...............oooOOOOOOOOOOOOOOO^*....................................................................................................\OOOOOOOooOOOOOO........
    // ..............*oooOOOOOOOOOOOOOOO`......................................................................................................OOOOOOOOOOOOOOO........
    // ..............=ooOOOOOOOOOOOOOOOo.......................................................................................................=OOOOOOOOOOOOOO`.......
    // ..............oooooOOOOOOOOOOOOO`.......................................................................................................,OOOOOOOOOOOOOO`.......
    // .............,oooooOOOOOOOOOOOOO.........................................................................................................OOO/[*[^**=o..........
    // ...............@OO@@@@@@OOOOOOOO........................................................................................................../`O@@^***/@^.........
    // ..............=@@@@@@@@@@@[[[[[`..........................................................................................................\@@@@@@@@@@^.........
    // ............./@@@@@@@@@@@^.................................................................................................................@@@@@@@@@@@.........
    // .............@@@@@@@@@@@@.................................................................................................................=@@@@@@@@@@@^........
    // ............/@@@@@@@@@@@@.................................................................................................................=@@@@@@@@@@@@........
    // .........../@@@@@@@@@@@@@.................................................................................................................=@@@@@@@@@@@@^.......
    // ..........O@@@@@@O@@@@@@O................................................................................................................./@@@@@@@@@@@@@`......
    // ......../O@@@@@@@@@@@@@@/................................................................................................................O@@@@@@@@@@@@@@@`.....
    // ....]`/OO@@@@@@@@@@@@@@@@\..............................................................................................................=@@@@@@@@@@@@@@@@@\....
    //OOOOOOOO@@@@@@@@@@@@@@@@@@^.............................................................................................................=@@@@@@@@@@@@@@@@@@OOO
//};
int main()
{
    int t;
    cin>>t;
    while(t--)
    {
        int n,m;
        cin>>n;
        m=n;
        for(int i=1;i<=n;i++)
        {
            cin>>a[i];
            ans[i]=0;
        }
        if(a[n]==1)
        {
            cout<<"NO"<<endl;
            continue;
        }
        for(int i=n;i>=2;i--)
        {
            if(a[i]!=a[i-1])
            {
                ans[m]=i-1;
                m--;
            }
        }
        cout<<"YES"<<endl;
        for(int i=1;i<=n;i++) 
            cout<<ans[i]<<' ';
        cout<<endl;
    }
    return 0;
}
End