题干:

度熊所居住的 D 国,是一个完全尊重人权的国度。以至于这个国家的所有人命名自己的名字都非常奇怪。一个人的名字由若干个字符组成,同样的,这些字符的全排列的结果中的每一个字符串,也都是这个人的名字。例如,如果一个人名字是 ACM,那么 AMC, CAM, MAC, MCA, 等也都是这个人的名字。在这个国家中,没有两个名字相同的人。

度熊想统计这个国家的人口数量,请帮助度熊设计一个程序,用来统计每一个人在之前被统计过多少次。

Input

这里包括一组测试数据,第一行包含一个正整数NN,接下来的NN 行代表了 NN 个名字。NN 不会超过100,000100,000,他们的名字不会超过40位.

Output

对于每输入的一个人名,输出一个整数,代表这个人之前被统计了多少次。

Sample Input

5
ACM
MAC
BBA
ACM
BAB

Sample Output

0
1
0
2
1

解题报告;

想找个办法水掉排序,这样复杂度会很低,但是失败了。。。老老实实用排序。

AC代码:

#include<bits/stdc++.h>using namespace std;
struct Node {int bk[30];bool operator < ( const Node b)const {bk[0]<b.bk[0];}
}tmp1,tmp2;
int main()
{char s[50];int n,len;
//  freopen("in.txt","r",stdin);map<string,int> mp;
/*  map<Node,int> mp;map<Node,int> ::iterator it;map<int, int> mpp;mpp[1]++;mpp[1]++;cout<<"%%%%"<<mpp[1]<<endl;tmp1.bk[1]=2;tmp2.bk[1]=2;it = mp.begin();//mp[tmp1]++;mp.insert(make_pair(tmp1,0) );cout<<mp[tmp1]<<endl;mp[tmp2]++;cout<<mp[tmp1]<<endl;for(; it!=mp.end(); it++)cout<< it->second <<endl;cout<<"hhhhhhhh"<<endl;
*/cin>>n;while(n--) {Node tmp ;scanf("%s",s);len = strlen(s);sort(s,s+len);printf("%d\n",mp[s]);mp[s]++;/*for(int i = 0 ; i<len; i++) {tmp.bk[s[i]-'a']++;}printf("%d\n",mp[tmp]);mp[tmp]++;*/}return 0 ;
}

【HDU - 5688 】Problem D(STL+map)相关推荐

  1. 【HDU - 1412】 {A} + {B} (STL + set)

    题干: 给你两个集合,要求{A} + {B}.  注:同一个集合中不会有两个相同的元素. Input 每组输入数据分为三行,第一行有两个数字n,m(0<n,m<=10000),分别表示集合 ...

  2. 【HDU 1269】迷宫城堡 (Tarjan算法)

    迷宫城堡 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submi ...

  3. 【HDU - 6558】The Moon(期望dp)

    题干: Random Six is a FPS game made by VBI(Various Bug Institution). There is a gift named "Beta ...

  4. 【HDU - 3440】House Man(差分约束)

    题干: In Fuzhou, there is a crazy super man. He can't fly, but he could jump from housetop to housetop ...

  5. 【HDU - 1237】简单计算器 (栈模拟)

    题干: 读入一个只包含 +, -, *, / 的非负整数计算表达式,计算该表达式的值. Input 测试输入包含若干测试用例,每个测试用例占一行,每行不超过200个字符,整数和运算符之间用一个空格分隔 ...

  6. 【HDU - 1172】猜数字 (枚举暴力)

    题干: 猜数字游戏是gameboy最喜欢的游戏之一.游戏的规则是这样的:计算机随机产生一个四位数,然后玩家猜这个四位数是什么.每猜一个数,计算机都会告诉玩家猜对几个数字,其中有几个数字在正确的位置上. ...

  7. 【HDU - 5014】Number Sequence(贪心构造)

    题干: There is a special number sequence which has n+1 integers. For each number in sequence, we have ...

  8. 【HDU - 4597】Play Game(博弈dp)

    题干: Alice and Bob are playing a game. There are two piles of cards. There are N cards in each pile, ...

  9. 【HDU - 1943】Ball bearings(几何问题)

    题干: The Swedish company SKF makes ball bearings. As explained by Britannica Online, a ball bearing i ...

最新文章

  1. Django进阶之session
  2. 刚出炉!程序员人才补贴:单项目最高补贴1000万元
  3. Redhat下的软件安装 RPM包管理工具介绍
  4. Powershell管理系列(三十九)PowerShell查询和解锁AD账号
  5. Table options do not contain an option key ‘connector‘ for discovering a connector
  6. C#时间与时间戳格式互相转化
  7. apache 的 配置项
  8. java编程思想.pdf,阿里开发手册.pdf,MySQL是怎样运行的_掘金小册_.pdf
  9. C++ 重制植物大战僵尸(Cocos2dx开源项目)
  10. 《互联网的那些事之时代》第三回:滟滟随波千万里,何处春江无月明
  11. 几个不常见但非常出色的 .NET 开源库
  12. 2011—2019年软考中级数据库系统工程师历年真题
  13. 一文掌握阿里云容器镜像服务ACR
  14. 涨点技巧:基于Yolov5的微小目标检测,多头检测头提升小目标检测精度
  15. 什么是FEC/NACK/RTX
  16. 力天创见户外客流统计方案
  17. 常熟理工php实验三_常熟理工Oracle实验三_高燕教授
  18. 将单页/多页 tif转换 jpg 格式方法和所需jar包
  19. 洛杉矶租车房车超强攻略,让房车旅行不麻烦
  20. 计算机应用与基础教学计划,《计算机应用基础》教学计划

热门文章

  1. c语言获取dll文件路径,C语言URLDownloadToFile获取文件下载进度
  2. oracle控制文件全备失败,Oracle数据库案例整理-恢复数据库失败-主备机控制文件所在目录不同...
  3. python判断英文字母_python判断字符串中是否含有英文 | 个人学习笔记记录
  4. cad钣金展开插件_钣金高级工考试大小头手工展开图步骤教程
  5. 801. 二进制中1的个数
  6. java多属性的map_java - 具有多个参数的MapStruct QualifiedByName - 堆栈内存溢出
  7. 金币问题c语言程序,【求助】急请c语言高手帮忙解决程序问题(问题已经被我自己解决,金币送给自己啦)...
  8. python3有多少个关键字排序_python3 数据结构和算法-- 通过某个关键字排序一个字典列表...
  9. git ssh配置文件 服务器_git登录ssh服务器
  10. mysql insert 不需要日志_详解MySQL|你不知道的新特性-8.0错误日志增强