// –Í‹[’n‹æ—\‘I2010 C. Dungeon Quest II #include #include #include #include using namespace std; int dx[] = {-1, 1, 0, 0}; int dy[] = {0, 0, 1, -1}; int main(){ int dmg[26]; string mp[100]; int HP, HPmax; int reg[12]; int dp[2][1<<12]; while(cin >> HP >> HPmax, HP){ int R, C; cin >> R >> C; for(int i=0;i> mp[i]; int T; cin >> T; for(int i=0;i> c >> d; dmg[c-'A'] = d; } int S; cin >> S; vector act; for(int i=0;i> c >> d; for(int j=0;j> P; for(int i=0;i> reg[i]; memset(dp, 0, sizeof(dp)); dp[0][(1<=0;j--){ if(dp[cur][j] == 0) continue; if(dp[cur][j] > damage) dp[next][j] = max(dp[next][j], dp[cur][j]-damage); for(int k=0;k 0 ? "YES" : "NO") << endl; } }