此题是状态dp 这个第一下就猜到了。
我一开始看的时候就想用一个整形保存各个状态,然后深搜回溯,暴力。我想其实状态也不是很多应该可以过的。结果没过。
我就在想有没有办法构造dp结构。后来我就想 如果当前状态含有这个J机器人,那么J的武器就拿了。同时在当前状态中除J外的那个dp值加上就可以了。依次类推。那么我就只要给全0状态赋值为1.其他的状态都是一步步加上来的。那么最坏情况就2^16种状态。
最后输出dp【1<<n】-1就可以了
此题超int 请用longlong 我调试了好久。当我试试用longlong过了的时候 我瞬间石化了
第一次自己独立做状态压缩感觉还不错。也多亏了看了例题25 那课是我花了1晚上,一条条代码扣出来想的结晶啊