#297 (div.2) A. Vitaliy and Pie

来源:互联网 发布:淘宝参加聚划算的要求 编辑:程序博客网 时间:2024/06/05 17:18

1.题目描述:点击打开链接

2.解题思路:本题其实就是一道模拟题,每次遇到小写字符,就把对应的个数加一,遇到大写字符,如果有钥匙,个数减一,否则cnt++。输出cnt即可。但比赛时候用了过多的STL,导致结果TLE了,导致我第一次A题都跪了==。其实直接用普通的标记数组就可以统计个数了。以后凡是能够用到C的,应该尽量用C,保证简洁与高效。

3.代码:

#define _CRT_SECURE_NO_WARNINGS #include<iostream>#include<algorithm>#include<string>#include<sstream>#include<set>#include<vector>#include<stack>#include<map>#include<queue>#include<deque>#include<cstdlib>#include<cstdio>#include<cstring>#include<cmath>#include<ctime>#include<functional>using namespace std;#define N 1000000+10int vis[26];int main(){//freopen("t.txt", "r", stdin);int n;char s[N];while (~scanf("%d", &n)){memset(vis, 0, sizeof(vis));scanf("%s", s); int len = 2 * n - 2;int cnt = 0;for (int i = 0; i < len;i++)if (i & 1){if (vis[s[i] - 'A'])vis[s[i] - 'A']--;else cnt++;}else vis[s[i] - 'a']++;cout << cnt << endl;}return 0;}

0 0
原创粉丝点击