九度OJ 1006 ZOJ问题 (这题測试数据有问题)

Posted gccbuaa

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了九度OJ 1006 ZOJ问题 (这题測试数据有问题)相关的知识,希望对你有一定的参考价值。

题目1006:ZOJ问题

时间限制:1 秒

内存限制:32 兆

特殊判题:

提交:15725

解决:2647

题目描写叙述:
对给定的字符串(仅仅包括‘z‘,‘o‘,‘j‘三种字符),推断他能否AC。



是否AC的规则例如以下:
1. zoj能AC;
2. 若字符串形式为xzojx,则也能AC。当中x能够是N个‘o‘ 或者为空;
3. 若azbjc 能AC,则azbojac也能AC。当中a,b,c为N个‘o‘或者为空;

输入:
输入包括多组測试用例,每行有一个仅仅包括‘z‘,‘o‘,‘j‘三种字符的字符串,字符串长度小于等于1000。
输出:
对于给定的字符串,假设能AC则请输出字符串“Accepted”。否则请输出“Wrong Answer”。
例子输入:
zoj
ozojo
ozoojoo
oozoojoooo
zooj
ozojo
oooozojo
zojoooo
例子输出:
Accepted
Accepted
Accepted
Accepted
Accepted
Accepted
Wrong Answer
Wrong Answer
实际上可以AC的代码。得到的例子输出却是:

技术分享

#include<stdio.h>
#include<string.h>
char s[1001];
int main()
{
    int num1,num2,num3;
    char *p;
    while(scanf("%s",s)!=EOF)
    {
        num1 = num2 = num3 = 0;
        p = s;
        if( !strcmp("zoj",s) ) { printf("Accepted\n"); continue; }
        while( (*p)=='o' ) { num1++; p++; }
        if((*p) == 'z'){
            p++;
            while((*p) == 'o'){num2++; p++;}
            if((*p) == 'j') {
                p++;
                while((*p) == 'o') {num3++; p++;}
                if(!(*p) && num2>0 && num3==num1*num2) {printf("Accepted\n");continue;}
            }
        }
        printf("Wrong Answer\n");
    }
    return 0;
}
 
/**************************************************************
    Problem: 1006
    User: kirchhoff
    Language: C
    Result: Accepted
    Time:30 ms
    Memory:916 kb
****************************************************************/












以上是关于九度OJ 1006 ZOJ问题 (这题測试数据有问题)的主要内容,如果未能解决你的问题,请参考以下文章

九度OJ—题目1032:ZOJ

九度OJ 1070 今年的第几天?(模拟)

九度OJ 打印日期 (模拟)

HDU-1076-An Easy Task(Debian下水题測试.....)

九度oj 题目1080:进制转换

&lt;九度 OJ&gt;题目1012:畅通project