• 杭电3788--ZOJ问题


    ZOJ问题

    Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
    Total Submission(s): 3269    Accepted Submission(s): 974


    Problem Description
    对给定的字符串(只包含'z','o','j'三种字符),判断他是否能AC。

    是否AC的规则如下:
    1. zoj能AC;
    2. 若字符串形式为xzojx,则也能AC,其中x可以是N个'o' 或者为空;
    3. 若azbjc 能AC,则azbojac也能AC,其中a,b,c为N个'o'或者为空;
     
    Input
    输入包含多组测试用例,每行有一个只包含'z','o','j'三种字符的字符串,字符串长度小于等于1000;
     
    Output
    对于给定的字符串,如果能AC则请输出字符串“Accepted”,否则请输出“Wrong Answer”。
     
    Sample Input
    zoj
    ozojo
    ozoojoo
    oozoojoooo
    zooj
    ozojo
    oooozojo
    zojoooo
     
    Sample Output
    Accepted
    Accepted
    Accepted
    Accepted
    Accepted
    Accepted
    Wrong Answer
    Wrong Answer
     
    Source
     
    Recommend
    notonlysuccess   |   We have carefully selected several similar problems for you:  3790 3791 3789 3787 3786 
    //坑点:
        <1>:串中一定有'Z', 'J';   'Z', 'J'中间一定有‘O’
        <2>:对于满足<1>的串,如a ‘Z’ b 'J' c 一定满足 a*b=c || a=c=0;
        <3>:oooooozj →→  Wrong Answer;
     1 #include <stdio.h>
     2 #include <string.h>
     3 int main()
     4 {
     5     char str[1010];
     6     while(~scanf("%s", str))
     7     {
     8         char ch[2] = {'0', '0'};
     9         int i, t, h, total = 0;
    10         int len = strlen(str);
    11         int num[3] = {0, 0, 0};
    12         int flag = 0;
    13         if(len<=2)
    14         {
    15             printf("Wrong Answer
    ");
    16             continue;
    17         }
    18         for(t=0, h=0, i=0; i<len; i++)
    19         {
    20             if(str[i] == 'o')
    21             total++;
    22             if(str[i] != 'o' || i == len-1)
    23             {
    24                 ch[h++] = str[i];
    25                 num[t++] += total;
    26                 total = 0;
    27                 continue;
    28             }
    29         }
    30         
    31     //    num[t++] = total;
    32         if(num[0]*num[1] == num[2] && ch[0]=='z' && ch[1] == 'j' && num[1]!=0)
    33         printf("Accepted
    ");
    34         else
    35         printf("Wrong Answer
    ");
    36     }
    37     return 0;    
    38 } 
  • 相关阅读:
    vue
    生成数组方式
    绕过CDN查找真实IP方法
    SQL注入WAF绕过
    缓冲区溢出的保护机制
    Redis未授权漏洞
    AFL 漏洞挖掘
    python多线程与多进程
    Java8四大核心接口示例
    @Autowired抱空指针异常解决方案
  • 原文地址:https://www.cnblogs.com/soTired/p/4677494.html
Copyright © 2020-2023  润新知