题目描述
有一天Tom去找上帝领天堂保安队工资,(起始工资为10^5)他看见上帝在和死神打牌,上帝告诉Tom他们的牌局最终的结果会影响到他的工资,作为一个回合制牌局,规则如下:
第一次为上帝的回合,不会经历任何事件。
后续 n−1 个回合,每一回合都依次经历以下两种事件:
首先,上帝的牌是免疫牌。为了简单,游戏中一共包含 26 种不同类型的免疫牌,用小写字母 a∼z 来表示。
死神会打出一张减少牌。游戏中一共包含 26 种不同类型的牌,用大写字母 A∼Z 来表示。 免疫牌与减少一一对应,牌 a 对应牌 A ,牌 b 对应牌 B ,以此类推。
当减少牌出现时,如果牌堆中有至少一个该伤害的对应免疫牌,则消耗一个对应的免疫牌,并免除此次减少,否则将受从工资中扣除1元。
注意,当前上帝打出的牌即使当前回合用不到,也可以留着以后回合使用。 请你设计一个算法帮助Tom算算他最后的工资
输入
第一行包含偶数 n(2 ≤ n ≤1e5) 。
第二行包含一个长度为 n 的由大小写字母构成的字符串,用来描述上帝和死神在第 1∼n 个回合依次经历的各种事件。小写字母表示上帝打出的不同的免疫牌,大写字母表示工资减少1。
注意,牌局在每一关都是先获得免疫再受到一次减少,保证输入字符串满足这一点。
输出
输出一个整数代表Tom的工资还剩下多少;
样例输入 Copy
4
aAbB
样例输出 Copy
100000
提示
样例输入 #2
10 aBaCaBaDaE样例输出 #2
99995
样例1:a正好抵挡一次A,b也正好抵挡一次B,故工资不变
样例2:发现上帝打出的牌无法抵挡死神的任意一次攻击,减少5点,输出99995