You can block a country because each one is assigned a block of IPs to use. Unless America has a similar policy for states (which I doubt) this'd be impossible. You also can't really do accurate geo-ip targeting due to use of proxies by many ISPs. You could probably block any proxies located in that state, seeing how ppl would be diverted to that one, but this wouldnt be a universal solution as it depends on the the ISP. long story short, highly unlikely and not worth the effort trying.
You may ban IP's editing the .htaccess file. Check this link out aaronlogan.com/downloads/htaccess.php Hope it may help you
You might have to purchase a geo/ip database and go from there. If zip codes are consistent throughout the state, then it is possible. When you find the geo/ip database, you could also do it by longitude and latitude. The get a script to check the database against the browser's ip address. Chose to redirect/block. phplife