火影忍者之~鸣人 (字符串处理,strcmp)

Posted -凡-尘

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了火影忍者之~鸣人 (字符串处理,strcmp)相关的知识,希望对你有一定的参考价值。

火影忍者的男主角漩涡鸣人,因为身上封印着邪恶的九尾妖狐,无父无母的他受尽了村人的冷眼与歧视,他下定决心要成为第六代火影,让所有人都认同他的存在,火影是动漫火影忍者中主人公鸣人所在的国家的最强忍者的头衔,史上最强火影为鸣人的父亲--四代火影波风水门,乃是传说级的人物,也是最年轻的火影,要成为火影,不仅需要有千种忍术和全村人的认同 更要有冷静的头脑 德高望重也必不可少 还要有优秀的领导能力,这之中战斗能力是最重要的,然后是领导能力,现在又到了选火影的时候了,可是鸣人此时还很弱,所以给出m个候选人,每个人有战斗力、领导能力两个主要的作为能力判断的依据,还有n个个人信息,第一条信息为名字,按战斗力和领导能力的高低作为标准,判断这些人中最具有担任火影资格的k人。

技术分享

 

 

 

Input

第一行:m,n,k都为整数

然后是m个候选人的信息,每个人的信息包括n行,第一行是名字,接下来n-1行是其他信息,每条信息为不超过100的字符串,然后是战斗力、领导能力为一行,m、n不超过500. k不超过50.字符串均不包括空白符

Output输出前k个人的名字。战斗力和领导能力都相同则按名字的字典序排列。(如果名字也相同则依次按后面的个人信息的字典序排列)Sample Input

5 3 3

dawn

haligong

dianji

500 500

freelon

haligong

wangluo

500 500

zeropointer

haligong

dianqi

600 400

cha

haligong

computer

800 600

13brother

haligong

computer

400 400

Sample Output

cha

zeropointer

dawn

题解:sort,字符串比较

#include <iostream>
#include<cstdio>
#include<cstring>
#include<string>
#include<algorithm>
using namespace std;
int n,m,k;
struct node
{
    char ch[505][105];
    int x,y;
}a[505];
bool cmp(node a,node b)
{
   if (a.x!=b.x) return a.x>b.x;
    else if (a.y!=b.y) return a.y>b.y;
     else
     {
       for(int j=1;j<=n;j++)
        {
         if (strcmp(a.ch[j],b.ch[j])!=0)//等于0的时候说明两个字符串相等,strcmp<0,按字典序;>0,降续;
             return strcmp(a.ch[j],b.ch[j])<0;
        }
     }
}
int main()
{
    while(~scanf("%d%d%d",&m,&n,&k))
    {
        for(int i=1;i<=m;i++)
        {
            for(int j=1;j<=n;j++)
            scanf("%s",a[i].ch[j]);
            scanf("%d%d",&a[i].x,&a[i].y);
        }
         sort(a+1,a+1+m,cmp);
         //sort(a+1,a+1+k,cmp2);
            for(int i=1;i<=k;i++)
                printf("%s\n",a[i].ch[1]);
    }

    return 0;
}

 

以上是关于火影忍者之~鸣人 (字符串处理,strcmp)的主要内容,如果未能解决你的问题,请参考以下文章

003:鸣人的影分身

鸣人的影分身(动规)

8467:鸣人的影分身

NOI 8467 鸣人的影分身

C语言编程学习当鸣人放了一个螺旋丸,我突然发觉这个事情不简单......

在百度中搜索:火影忍者,然后打开百度百科,这样的效果怎么实现的,有没有啥js插件可以实现