Naeioi

量子の風
随笔 - 8, 文章 - 0, 评论 - 0, 引用 - 0
数据加载中……

UVa 10815

原题在这里。代码写的比较乱
#include <cstdio>
#include <string.h>
#include <ctype.h>
#include <stdlib.h>
using namespace std;

const int maxn=5005,maxl=205;
int tot=0;
char word[maxn][maxl],now[maxl];

bool find(void)
{
    for (int i=0; i<tot; i++)
        if (!strcmp(now,word[i]))
            return true;
    return false;
}

int cmp(const void *a,const void *b)
{
    return strcmp((char*)a,(char*)b);
}

int main()
{
#ifndef ONLINE_JUDGE
    freopen("10815.in","r",stdin);
    freopen("10815.out","w",stdout);
#endif

    for (;;)
    {
        do
        {
            *now=getchar();
        }
        while (!isalpha(*now)&&*now!=EOF);
        now[1]=0;
        if (scanf("%[qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM]",now+1)==EOF)
            break;
        for (int i=0; now[i]; i++)
            now[i]=tolower(now[i]);
        if (!find())
            memcpy(word[tot++],now,sizeof(now));
    }

    qsort(word,tot,sizeof(word[0]),cmp);

    for (int i=0; i<tot; i++)
        printf("%s\n",word[i]);

    fclose(stdin);
    fclose(stdout);
    return 0;
}

posted on 2010-11-12 19:13 Naeioi Zhu 阅读(361) 评论(0)  编辑 收藏 引用 所属分类: 题库题解


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理