标题:三国杀问题,连续查找问题(怎么提高运算速度)
只看楼主
jwk0403
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2012-11-11
结帖率:33.33%
 问题点数:0 回复次数:0 
三国杀问题,连续查找问题(怎么提高运算速度)
5197: 三国杀

Input

这里的势力只有3个,也就是君主只有三个,层归到君主结束。多组测试数据,每组测试数据以cnt开始,表示关系个数,接着cnt行,每个关系两个名字用空格分隔,如张辽 司马懿,表示张辽是司马懿的下属,接着k个询问总数,接着k行,每行一个名字,表示要求的层归序列。

Output

输出层归序列,每个询问一行。

Sample Input

21
司马懿 曹操
张辽 司马懿
郭嘉 曹操
杨修 郭嘉
夏侯渊 张辽
于禁 夏侯渊
诸葛亮 刘备
黄月英 诸葛亮
关羽 刘备
张飞 关羽
赵云 诸葛亮
马超 刘备
姜维 诸葛亮
甘宁 周瑜
吕蒙 周瑜
曹仁 曹操
黄盖 周瑜
黄忠 黄月英
周泰 周瑜
周瑜 孙权
陆逊 孙权
12
于禁
陆逊
黄盖
张辽
黄月英
诸葛亮
曹仁
周泰
周瑜
马超
姜维
夏侯渊
Sample Output

于禁,夏侯渊,张辽,司马懿,曹操
陆逊,孙权
黄盖,周瑜,孙权
张辽,司马懿,曹操
黄月英,诸葛亮,刘备
诸葛亮,刘备
曹仁,曹操
周泰,周瑜,孙权
周瑜,孙权
马超,刘备
姜维,诸葛亮,刘备
夏侯渊,张辽,司马懿,曹操


大家能否给点经验,怎么提高运算速度,因为ACM平台很坑,时间容易超限,谢谢你们

我的代码:
#include <stdio.h>
#include <string.h>
int main(void)
{
    char str1[100][50], str2[100][50];
    char arr[100][50];
    int n, i, m, j;
    int flag=1, k=0, l=0, leap=0;

    while(scanf("%d", &n)!=EOF)
    {
        for(i=0; i<n; i++)
            scanf("%s %s", str1[i], str2[i]);

        scanf("%d", &m);
        for(i=0; i<m; i++)
            scanf("%s", arr[i]);

        for(i=0; i<m; i++)
        {
            for(j=0; j<n; j++)
            {
                if(strcmp(arr[i], str1[j])==0&&flag==1)
                {
                    printf("%s,%s", arr[i], str2[j]);
                    flag = 0;
                    k=j;
                    j=0;
                    leap++;
                    if(leap==0)
                    {
                        printf("%s", arr[i]);
                        break;
                    }
                }
                if(strcmp(str2[k],str1[j])==0&&flag==0)
                {
                    printf(",%s", str2[j]);
                    k=j;
                    j=-1;
                }
            }
            printf("\n");
            flag = 1;
            leap=0;
        }
    }
    return 0;
}
搜索更多相关主题的帖子: 三国杀 诸葛亮 司马懿 黄月英 
2012-11-24 09:06



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-388230-1-1.html




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

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