Assuming the rest of your setup is good as it is, then no.
As temoto writes Memcached was created to run on webnodes (web application servers), under the assumption that webnodes are heavily loaded on CPU, but have free RAM. Memcached's whole architecture is built for it to run on multiple servers; the more the merrier.
So if you should run Memcached, you should run it on all servers that have some free RAM. Arguably, you should also run all your web applications on all web-servers (on different ports) in order to have your full CPU capacity available for load spikes. (Use a load balancer in front to route traffic to the right applications based on the URL.)
However, this setup would be more complex to administrate in day to day sysadmin work. This is probably not the best way to scale your applications.
You don't write which platform you're using. Most modern web application servers have a in-process caching mechanism available. Take a look at in-process caching before going to networked caching like Memcached...