HDOJ 1219 AC Me(有问题!)

来源:互联网 发布:家庭千兆网络组建方案 编辑:程序博客网 时间:2024/06/05 12:22

【思路】:只要不用switch就可以。

【注意】:本题在for循环中采用如下方式会TLE

for (i = 0; i < strlen(str); i++)

采用这种则AC。

for (i = 0; str[i] != '\0'; i++)
有知道的朋友麻烦告知一下,万分感谢!

【TLE代码】:

#include <iostream>#include <cstdio>#include <cstring>using namespace std;#define MAX 100000+1int main(){    //freopen("in.txt", "r", stdin);    char str[MAX];    while (gets(str))    {        int t[26+1];        int i = 0;        memset(t, 0, 27*sizeof(int));        for (i = 0; i < strlen(str); i++)        {            if(str[i] >= 'a' && str[i] <='z')            {                t[str[i]-'a']++;            }        }        for (i = 0; i < 26; i++)        {//            cout << char(i+'a') << ":" << t[i] << endl;            printf("%c:%d\n", i+'a', t[i]);        }//        cout << endl;        printf("\n");    }    return 0;}
【AC代码】:

        for (i = 0; str[i] != '\0'; i++)        {            if(str[i] >= 'a' && str[i] <='z')            {                t[str[i]-'a']++;            }        }


0 0
原创粉丝点击