Will you please give me the optimised code for solving this pattern question

#include
int main()
{
int i,j,k,l,n,m,o;
int N;
std::cin>>N;
for(int i=N ; i>0 ; i–)
{
if(i == N)
{
for(int j=1 ; j<=i+4 ; j++ )
{
std::cout << ā€œ";
}
std::cout << ā€œ\nā€ ;
}
else if(i<N)
{
for(int k=1 ; k<=i ; k++ )
{
std::cout << "
ā€ ;
}
for(int l=i ; l<5 ; l++)
{
std::cout << " ";
}
for(int o=1 ; o<N-i ; o++ )
{
std::cout << " " ;
}
for(int m = 1 ; m <= i ; m++)
{
std::cout << ā€œ*ā€ ;
}

        std::cout << "\n" ;
    }

}
for(int i=2 ; i<=N ; i++)
{
    if(i<N)
    {
        for(int k=0 ; k<i ; k++ )
            {
                std::cout << "*" ;
            }
        for(int l=i ; l<5 ; l++)
            {
                std::cout << " ";
            }
       for(int o = 1 ; o < N-i ; o++ )
            {
                std::cout << " " ;
            }
        for(int m = 0 ; m < i ; m++)
            {                
                std::cout << "*" ;
            }
        std::cout << "\n" ;
            
    }
    else if(i == N)
    {
         for(int j = 1 ; j <= i+4 ; j++ )
        {
            std::cout << "*" ;
        }
        std::cout << "\n" ;
    }
    
}
return 0;

}

Reference code :