★☆   输入文件:sakinani.in   输出文件:sakinani.out   简单对比
时间限制:1 s   内存限制:256 MB

题目背景

二十一世纪,世界上的麻将竞技人数超过一亿,日本每年也有大规模的全国大赛来对麻将选手进行选拔。从小学到高中,很多学校也设立了麻将部。

《天才麻将少女阿知贺篇 episode of side-A》『 -Saki- 阿知賀編 episode of side-A』是《天才麻将少女》『 -Saki-』的外传,从另一个视角讲述麻将少女们的故事。故事背景设定在《天才麻将少女》本篇第二主角原村和曾生活的奈良县,主角校为阿知贺女子学院。(有问题?内事百度,外事谷歌)

由于阿知贺人物存在感不够强,导致该作被称为“千里山篇”「 -Toki- 千里山編」,甚至 2012 年动画最萌也是千里山的園城寺怜同学。我们一直很疑惑这到底谁是主角,那么就让数据说话吧!

题目要求

我们给出一个人物列表,人物有其所属的学校。比如「松実玄」同学隶属「阿知賀女子学院」什么的。有的人物没有所属学校或没有明确给出其所属,可以无视。

人物每一次出场都会给其学校增加一点存在感。有少数“被牌爱着的孩子”,即“魔物”会有非常高的存在感,出场一次会有普通人出场两次的存在感。

我们需要统计,在给出的人物出场单中,哪个学校存在感最高,我们就把这篇动画命名为什么编。

输入格式

  • 输入文件第一行为一个整数 n ,表示有多少人物出现。下面 n 行是人物列表,每两行有两个字符串 A 和 B ,表示人物 A 属于学校 B 。没有同名人物,不会重复出现人物。
  • 下面一行一个整数 k ,表示魔物的数量。接下来 k 行,每行一个字符串,表示魔物的姓名,不保证魔物在人物列表中。
  • 接下来直到文件末尾,每行有一个字符串(空行不算),表示出场人物,可能会出现不存在于上面列表中的人物。

样例输入

7
宮永咲 清澄高校
原村和 清澄高校
片岡優希 清澄高校
園城寺怜 千里山女子高校
竹井久 清澄高校
天江衣 龍門渕高校
龍門渕透華 龍門渕高校
2
宮永咲
天江衣 原村和
高鴨穏乃
原村和
片岡優希
原村和
宮永咲

输出格式

  • 输出只有一行,即存在感最大的学校名称,并列第一则输出编码序小的一个。

样例输出

清澄高校

数据范围及要求

  • 对于 70% 的数据,总出现次数不超过 10000。
  • 对于 100% 的数据,学校数量不超过 40 ,人物数量不超过 200 ,总出现次数不超过 1000000。
  • 对于 40% 的数据,字符串中只有大写和小写字母。
  • 对于 100% 的数据,字符串中会存在大小写字母、汉字和日语假名,且长度不超过 100 。为了简化问题,输入输出文件都使用 ANSI 编码(一个东亚字符占两字节)。

模拟

屠龙宝刀点击就送

#include <algorithm>
#include <iostream>
#include <cstring>
#include <cstdio>
#include <string>
#define N 1000005
using namespace std;
struct node
{
string name,sch;
bool flag;
}stu[N];
struct nodE
{
string sch;
int sum;
bool operator<(nodE a)const
{
if(sum==a.sum) return sch<a.sch;
else return sum>a.sum;
}
}sv[N];
bool sq[N];
int n,m,num;
int Main()
{
freopen("sakinani.in","r",stdin);
freopen("sakinani.out","w",stdout);
scanf("%d",&n);
string a,b;
for(int i=;i<=n;++i)
{
cin>>stu[i].name>>stu[i].sch;
for(int j=;j<=num;++j)
{
if(sv[j].sch==stu[i].sch)
goto flag;
}
sv[++num].sch=stu[i].sch;
flag:;
}
scanf("%d",&m);
for(;m--;)
{
cin>>a;
for(int i=;i<=n;++i)
if(stu[i].name==a) stu[i].flag=true;
}
while(cin>>a)
{
b.clear();
int sum=;
for(int i=;i<=n;++i)
if(stu[i].name==a)
{
b=stu[i].sch;
if(stu[i].flag) sum=;
else sum=;
break;
}
if(!b.size()) continue;
for(int i=;i<=num;++i)
if(sv[i].sch==b) sv[i].sum+=sum;
}
sort(sv+,sv++num);
cout<<sv[].sch;
return ;
}
int sb=Main();
int main(int argc,char *argv[]) {;}

COGS 898. [咲 -Saki-] 天才麻将少女什么编的更多相关文章

  1. [补档]从OI学麻将

    背景 作为一名川娃子,怎么能不懂麻将呢= = T1 さきなに~~ [咲 -Saki-] 天才麻将少女什么编 题目 二十一世纪,世界上的麻将竞技人数超过一亿,日本每年也有大规模的全国大赛来对麻将选手进行 ...

  2. Wiki动画回顾系列序&&目录

    嘛,前前后后看了太多动画,我自己一直想做的事也是喜欢能做一款acg相关的应用,但一直没有好的点子,当然纠结到最后还是需要一个比较好的社区来让大家加入进来.一直有人让我给他们推番,而我也慢慢懂得“人心” ...

  3. 转:Unicode汉字编码表

    转自:http://blog.csdn.net/huangxy10/article/details/10012119 Unicode汉字编码表 1 Unicode编码表  Unicode只有一个字符集 ...

  4. Unicode汉字编码表

    U+  0   1  2  3  4   5  6   7   8   9   A  B  C  D  E  F  ------------------------------------------ ...

  5. [转载]GBK 汉字内码扩展规范编码表(1.0 版)

    编码表源地址:http://ff.163.com/newflyff/gbk-list/ 编码在线查询:http://www.qqxiuzi.cn/bianma/zifuji.php GBK 汉字内码扩 ...

  6. 由Unicode编码想到弄懂编码表

    test unicode好 007400650073007400200075006E00690063006F00640065597D 这是一个Unicode编码,一共六七万的汉字,可以说Unicode ...

  7. unicode 汉字编码表

    啊:21834 阿:38463 埃:22467 挨:25384 哎:21710 唉:21769 哀:21696 皑:30353 癌:30284 蔼:34108矮:30702 艾:33406 碍:308 ...

  8. GB2312 简体中文编码表

    GB 2312中对所收汉字进行了“分区”处理,每区含有94个汉字/符号.这种表示方式也称为区位码. 01-09区为特殊符号. 16-55区为一级汉字,按拼音排序. 56-87区为二级汉字,按部首/笔画 ...

  9. ASP.NET开发,且编且改,分清职责

    本篇Insus.NET使用一个实例,分享在ASP.NET开发时,一个功能一个方法(函数),且编且改,一步一个脚印把实例完成.在方法多变多形式的情况之下,怎样把写出来程序简单明了. 下面是一个Excel ...

随机推荐

  1. [转]关于CLOB存储Base64图片编码,直接在前台显示解决方案

    转至:http://ouapi.com/tool/imgtob 两种方案: Base64在CSS中的使用 .yanshishuxing{ background-image: url("dat ...

  2. 从CGI到FastCGI到PHP-FPM

    从CGI到FastCGI到PHP-FPM 背景 笔者在学习这几个名词的时候,也是被百度到的相关文章迷惑.涉及到的主要名词包括 1. CGI协议 2. CGI脚本 3. PHP-CGI 4. FastC ...

  3. PAT L2-006【二叉树中序后序构造树】

    #include<bits/stdc++.h> using namespace std; typedef long long LL; struct BT{ int w; BT *L; BT ...

  4. 51nod1138(连续和)

    题目链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1138 题意:中文题诶- 思路:假设 x=a1+(a1+1)+ ...

  5. 说一说solr在tomcat,jetty上的运行和安装优缺点

    本文是我从别的文章中组合而成的,结合自己实际操作进行了修改. Solr是什么 Solr 是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文搜索服务器.Solr提供了比Lu ...

  6. Linux学习常用命令大全

    Linux知识大全 转载须说明出处,整理不易 一.常用的linux命令 1.2 ls 命令说明 1.3 ls 通配符的使用 2.切换目录cd命令 3.创建和删除文件操作 4.移动和拷贝文件 4.3.m ...

  7. Task :rn-splash-screen:verifyReleaseResources FAILED

    Execution failed for task ':rn-splash-screen:verifyReleaseResources'. > java.util.concurrent.Exec ...

  8. JavaScript中内置对象的一些属性及方法

    Javascript对象总结 JS中内置了17个对象,常用的是Array对象.Date对象.正则表达式对象.string对象.Global对象 Array对象中常用方法: Concat():表示把几个 ...

  9. 总结工作中用到的ES6语法,方便工作中查看,也总结一下经验

    1.模板字符串: 表现形式:${} 举例子: import axios from 'axios'; let base = 'https://www.baidu.com/home/msg/data/pe ...

  10. (二)异步解决方案之callback

    回调定义 就是一个函数里面使用 作为参数的函数. Function1(Function2) { Function2(); }; 同步调用 - 老实说,这和我们 不将代码封装成 函数没有差别 也就是说 ...