Q:

.htaccess rewrite 301 rules not working

I am in the process of simplifying my URLs and have come up with a problem concerning the use of Rewrite in htaccess files. 
Search engines currently list my pages in the following format
www.example.com/x/x/article_a/1159/
which is currently rewritten by the following htaccess file placed in the /x/x directory
RewriteRule walk_a/(.*)/$ /x/x/article_a.php?id=$1

This has worked fine for many years. 
I want to simplify the URL to 
www.example.com/article-1159-introduction
I have tried the following redirects placed in the root
RewriteRule ^x/x/article_a/(.*)/$ http://www.example.com/article-$1-introduction [R=301,NC,L]
RewriteRule ^article-(.*)-introduction$ /x/x/article_a.php?id=$1

The 301 rewrite seems to have no effect although the second rewrite command works fine. 
What am I doing wrong?  

A:

Inside /x/x/.htaccess directory use this rule:
RewriteEngine On

RewriteRule ^article_a/(.*)/$ /article-$1-introduction [R=301,NC,L,NE]

Then inside root .htaccess have this rule:
RewriteEngine On

RewriteRule ^article-(.+)-introduction$ /x/x/article_a.php?id=$1 [L,QSA]

