zoukankan      html  css  js  c++  java
  • 牛客小白月赛2:文

    链接:https://www.nowcoder.com/acm/contest/86/G
    来源:牛客网

    时间限制:C/C++ 1秒,其他语言2秒
    空间限制:C/C++ 262144K,其他语言524288K
    64bit IO Format: %lld

    题目描述

    Sεlιнα(Selina) 开始了新一轮的男友海选。她要求她的男友要德智体美劳样样都全。首先进行的是文化知识竞赛。
    Sεlιнα 精心准备了一套选择题,每个选择题有且只有一个正确答案。她邀请参赛男友们来答题,并回收了试卷准备批改。可是她却犯了愁。她不知道怎么快速地批改完这些试卷。她知道你是计算机大佬,就跑来请你写个程序帮她批改试卷。
    Sεlιнα 会给你一份标准答案,再给你每个参赛男友的答卷。答卷中的每道题可能有一个答案, 也可能没有作答。你要做的是最后告诉 Sεlιнα 谁拿到了最高分,以及最高分的分数(分数为 分制)。Sεlιнα 喜欢优美的名字,所以如果有同样的分数,请告诉她其中字典序最小的选手名字。
    不要偷懒哦!要是你告诉了 Sεlιнα 错误的答案,她会很生气的!

    输入描述:

    第一行两个整数 ,表示有 道选择题和 个参赛男友。第二行一个长为 的字符串,表示标准答案。其中第 个字母表示第 个选择题的答案。保证所有字母在  中。接下去 行,每两行表示一个参赛男友: 
     · 第一行一个字符串,表示参赛者姓名,保证姓名仅由大小写字母组成;
     · 第二行一个长为 的字符串,表示该参赛者的答案。其中第 个字母表示该参赛者对于第 个选择题的答案。保证所有字母在 中。 表示该参赛者未作答此题。

    输出描述:

    输出共两行,第一行是最高分的参赛男友姓名,第二行为其分数。
    分数为 分制,保留两位小数。若有多人同分,输出字典序最小的姓名。 
    示例1

    输入

    5 3
    ADBBC
    spiderman
    ADBAC
    niconico
    BDXBC
    ekstieks
    ACBBC

    输出

    ekstieks
    80.00

    备注

      姓名长度  

    #include<stdio.h>
    #include<string.h>
    #define N 100020
    struct dete{
    	char name [50];
    	char ans[N];
    	double s;
    }a[120],max;
    char answer[N];
    int main()
    {
    	int n,m,i,j;
    	max.s=0;
    	scanf("%d%d",&n,&m);
    	scanf("%s",answer);
    	for(i=0;i<m;i++)
    	{	
    		a[i].s=0;
    		scanf("%s%s",a[i].name,a[i].ans);
    		for(j=0;j<n;j++)
    			if(a[i].ans[j]==answer[j])
    				a[i].s++;
    		if(i==0)
    			max=a[i];
    		else if(a[i].s>max.s)
    			max=a[i];
    		else if(a[i].s==max.s&&strcmp(max.name,a[i].name)>=0)
    			max=a[i];
    	}
    	printf("%s
    %.2lf
    ",max.name,max.s/n*100);
    	return 0;
    }


     

  • 相关阅读:
    [C++]2-5 分数化小数
    [C++]2-4 子序列的和
    [C++]2-3 倒三角形
    [C++]2-2 韩信点兵
    [C++]2-1 水仙花数
    [C++]竞赛模板·数据统计与IO(重定向版与非重定向版)
    数学建模·经验小结
    信息检索·论文写作
    PPT制作
    演讲与语言表达
  • 原文地址:https://www.cnblogs.com/zyq1758043090/p/10003060.html
Copyright © 2011-2022 走看看