题意:

  每行给出一个人名和一个int值,人名可重复出现。要求对同一个人名统计int值,最大的先输出,若相同,则按照人名出现次数,若再相同,则按照人名字典序。

思路:

  输入完全部进行排序,写个比较函数传进去sort即可。

 #include <bits/stdc++.h>
using namespace std; struct node
{
char nam[];
int lik;
int tim;
}a[]; map<string, int> mapp2;//名字映射为int比较好处理 int cmp(node ll,node rr)
{
if(ll.lik<rr.lik)
return ;
else if(ll.lik>rr.lik)
return ; if(ll.tim<rr.tim)
return ;
else if(ll.tim>rr.tim)
return ; if(strcmp(ll.nam, rr.nam)>)
return ;
else return ;
} int main()
{
//freopen("input.txt", "r", stdin); //按照可能性排序,再按照时间排序,再按字典序排序。 int n, like;
char s[];
string temp;
map<string,int>::iterator it; while(cin>>n)
{
memset(a,,sizeof(a));
mapp2.clear(); int k=;
for(int i=; i<n; i++)
{
scanf("%s%d",s,&like);
temp=s;
it=mapp2.find(temp); if(it==mapp2.end()) //新来的
{
mapp2[temp]=k; a[k].lik=like;
a[k].tim=;
strcpy(a[k].nam, s);
k++;
}
else
{
a[it->second].lik+=like;
a[it->second].tim++;
}
}
sort(a,a+k,cmp);
printf("%d\n",k);
for(int i=; i<k; i++)
printf("%s %d %d\n", a[i].nam, a[i].lik, a[i].tim);
}
return ;
}

AC代码

NBUT 1118 Marisa's Affair (排序统计,水)的更多相关文章

  1. NBUT 1114 Alice's Puppets(排序统计,水)

    题意:给一棵人名树,按层输出,同层则按名字的字典序输出. 思路:首先对每个人名做索引,确定其在哪一层,按层装进一个set,再按层输出就自动排好序了. #include <bits/stdc++. ...

  2. 【hadoop】1、MapReduce进行日志分析,并排序统计结果

    1.网上很多关于搭建Hadoop集群的知识,这里不多做叙述,并且本机运行Hadoop程序是不需要hdfs集群的,我们本机运行只做个demo样式,当真的需要运行大数据的时候,才需要真正的集群 2.还有就 ...

  3. hdu 1106:排序(水题,字符串处理 + 排序)

    排序 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submissi ...

  4. Uva 10305 - Ordering Tasks 拓扑排序基础水题 队列和dfs实现

    今天刚学的拓扑排序,大概搞懂后发现这题是赤裸裸的水题. 于是按自己想法敲了一遍,用queue做的,也就是Kahn算法,复杂度o(V+E),调完交上去,WA了... 于是检查了一遍又交了一发,还是WA. ...

  5. Python 列表增删改查排序统计

    列表的查 a = ["klvchen", "tom", "jack", "james", "lily" ...

  6. 蓝桥杯 第四届C/C++预赛真题(6) 三部排序(水题)

    标题:三部排序 一般的排序有许多经典算法,如快速排序.希尔排序等. 但实际应用时,经常会或多或少有一些特殊的要求.我们没必要套用那些经典算法,可以根据实际情况建立更好的解法. 比如,对一个整型数组中的 ...

  7. hdu 1106 排序(水题)

    题目描述: 输入一行数字,如果我们把这行数字中的'5'都看成空格,那么就得到一行用空格分割的若干非负整数(可能有些整数以'0'开头,这些头部的'0'应该被忽略掉,除非这个整数就是由若干个'0'组成的, ...

  8. 【codevs 1296】营业额统计 水~~

    今天下午先写一个Splay水题来复习一下Splay模板.是不是有点太水了做这种水题我有点良心不安. 可笑的是一开始我竟然WA了一组,看来是我低估水题的数据范围了,我是空节点直接返回inf或-inf,明 ...

  9. NBUT 1122 Shameimaru's Candid Camera(水)

    题意: 给n*m个格子,初始时每个格子中有个数值为0,部分格子中含有炸弹,每个炸弹爆炸可以将周围的8个非炸弹格子中的数值加1,求全部炸弹炸完后那些非0且非炸弹格子中的数是多少. 思路: 另开一个矩阵, ...

随机推荐

  1. ZipHelper

    using ICSharpCode.SharpZipLib.Zip; using System.Collections.Generic; using System.IO; namespace WLYD ...

  2. java的环境变量classpath中加点号 ‘.’ 的作用

    java的环境变量classpath中加点号 ‘.’ 的作用 “.”表示当前目录,就是编译或者执行程序时,你的.class文件所在的目录: 当找.class文件时,先去“.”路径下找,找不到的话,在去 ...

  3. CodeForces 349B Color the Fence (DP)

    题意:给出1~9数字对应的费用以及一定的费用,让你输出所选的数字所能组合出的最大的数值. 析:DP,和01背包差不多的,dp[i] 表示费用最大为 i 时,最多多少位,然后再用两个数组,一个记录路径, ...

  4. Lua 不是 C++

    http://blog.codingnow.com/2008/08/lua_is_not_c_plus_plus.html 嗯,首先,此贴不是牢骚帖. 话题从最近私人的一点工作开始.应 dingdan ...

  5. c# 字符串大小写转换

    //小转大 string lower = "converted from lowercase"; Console.WriteLine(lower.ToUpper()); //大转小 ...

  6. mysql order by是怎么工作的?

    假设我们要查询一个市民表中城市=杭州的所有人的名字,并且按照名字排序 CREATE TABLE `t` ( `id` ) NOT NULL, `city` ) NOT NULL, `name` ) N ...

  7. Unity3D之如何将包大小减少到极致

    http://www.luzexi.com Unity3D之如何将包大小减少到极致,图片是游戏app里最最占空间的资源,所以请各位还没有理解u3d对图片文件存储方式理解的请看<unity3d-t ...

  8. 题解 P1162 【填涂颜色】

    看到题目规模是n(1≤n≤30)即最大规模为30*30 本蒟蒻有个奇妙的想法!! 核心思路:搜索地图内除开被1包围着的0,并标注为1(即不填色) !!!那么,我们可以从每一个边界点开始去搜索 话不多说 ...

  9. 给 UILabel 中的文字增加 line-through / Strikethrough (删除线)样式

    iOS 6 中苹果引入了 NSStrikethroughStyleAttributeName 属性,用于设置 NSAttributedString 的删除线样式,用法如下: let attribute ...

  10. react-native-wechat微信组件的使用

    对我来说link没有成功过,所以参考了其他人的文章,原文:https://www.jianshu.com/p/6a792118fae4 第一步:要去:https://open.weixin.qq.co ...