| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 666 人关注过本帖, 1 人收藏
标题:示例正确,提交不成功,怎么回事???
取消只看楼主 加入收藏
傻瓜菜
Rank: 2
来 自:earth
等 级:论坛游民
帖 子:73
专家分:66
注 册:2011-10-4
结帖率:94.44%
收藏(1)
已结贴  问题点数:20 回复次数:2 
示例正确,提交不成功,怎么回事???
程序代码:
#include
char a[9][9];
int panduan(int i,int j)
{
    int x,y,three,qq;
    three=qq=0;
    for(x=i-1;x<=i+1;x++)
    {
        if(x<0) continue;
        for(y=j-1;y<=j+1;y++)
        {
            if(j<0) continue;
            if(a[x][y]=='3')
                three++;
            else if(a[x][y]=='Q')
                qq++;
        }
    }
    if(three>qq)
        return 1;
    else
        return 0;
}
int main()
{   
    int i,j,three,qq,z;
    scanf("%d",&z);
    while(z--)
    {
        three=qq=0;
        for(i=0;i<8;i++)
            scanf("%s",a[i]);
        for(i=0;i<8;i++)
            for(j=0;j<8;j++)
                if(panduan(i,j)==1)
                    a[i][j]='3';
                else
                    a[i][j]='Q';
        for(i=0;i<8;i++)
            for(j=0;j<8;j++)
                if(a[i][j]=='3')
                    three++;
                else
                    qq++;
        if(three>qq)
            printf("3\n");
        else if(three<QQ)
            printf("Q\n");
        else
            printf("D\n");
    }
    return 0;
}

               
如果你每天挂 QQ,并且也使用 360 安全卫士,那就一定知道不久前腾讯做的艰难决定。QQ 和 360 的大战只是耍了几天嘴皮子,就在“有关部门”的干预下平息了。干打雷不下雨,咱这种闲人岂能过瘾。

请你来实现一个程序,看看 360 与 QQ PK 到底结果如何。

比赛的场地是一个 8x8 的方阵,QQ 和 360 分别派各自的员工占据其中的位置(员工数量不需要相同,毕竟不是在下中国象棋)。如下图所示:

 x01234567
y --------
0|QQQQQQQQ
1|3333333Q
2|3QQQQQ3Q
3|3Q333Q3Q
4|3Q3Q3Q3Q
5|3Q3QQQ3Q
6|3Q33333Q
7|3QQQQQQQ
其中 Q 代表 QQ 员工,3 代表 360 员工。比如场地 y = 3, x = 2 的位置是 360 员工。

战斗开始后,每个位置的参赛者都要检查周围八个方向(加上自己,一共九个位置),如果己方的实力(人数)不输于敌方,则下一刻这个位置依旧由己方控制;否则,在下一刻这个位置就会被敌方攻占!比如上面说的 y = 3, x = 2 位置,它周围的形势是:

 x123
y ---
2|QQQ
3|Q33
4|Q3Q
有 6个 QQ 员工,之后 3 个 360 员工,所以下一刻这个位置会被 QQ 占领,3 变成 Q。按照这样的方法,一直持续下去,直到整个战场的状态趋于稳定,即任何位置都不再有变化。这时候,统计一下战场上哪一方的人数多即最终胜利者。

Input
输入数据的第一行是一个整数 n(0 < n < 100),表示有 n 场比赛。
每一场比赛有 8行,并且每行有 8列。

Output
输出这场比赛的赢家:

如果 QQ 获胜,输出“Q”。
如果 360 获胜,输出“3”。
如果 QQ 和 360 打和,即人数一样多,则是“有关部门”获胜了,输出“D”。

Sample Input
3
3333QQQQ
3333QQQQ
3333QQQQ
3333QQQQ
3333QQQQ
3333QQQQ
3333QQQQ
3333QQQQ
QQQQQQQQ
3QQQQQQQ
33QQQQQQ
333QQQQQ
3333QQQQ
33333QQQ
333333QQ
3333333Q
33333333
3QQQQQQ3
3Q3333Q3
3Q3QQ3Q3
3Q3QQ3Q3
3Q3333Q3
3QQQQQQ3
33333333
Sample Output
D
Q
3

搜索更多相关主题的帖子: continue 
2012-02-07 19:21
傻瓜菜
Rank: 2
来 自:earth
等 级:论坛游民
帖 子:73
专家分:66
注 册:2011-10-4
收藏
得分:0 
回复 3楼 beyondyf
http://acm.zjgsu.
前辈对那里应该有些熟悉了吧,劳烦了
2012-02-07 23:03
傻瓜菜
Rank: 2
来 自:earth
等 级:论坛游民
帖 子:73
专家分:66
注 册:2011-10-4
收藏
得分:0 
回复 5楼 yxiangyxiang
谢谢,应该是8*9吧?
2012-02-08 11:49
快速回复:示例正确,提交不成功,怎么回事???
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.042632 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved