⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 2945.txt

📁 北大ACM题目例程 详细的解答过程 程序实现 算法分析
💻 TXT
字号:


// 2945.cpp : 定义控制台应用程序的入口点。
//
//#include "stdafx.h"



#include <stdlib.h>
#include <stdio.h>
#include <string.h>

#define NMAX 20005
#define MMAX 24

int n,m;

char str[NMAX][MMAX];
void input()
{
	int i;
	for( i = 0 ; i < n; ++i)
	{
		gets(str[i]);
	}
}
int cmp(const void *a,const void *b)
{
	int i;
	int ret=0;
	char* l =((char*)a);
	char* r=(char*)b;
	for(i=0; i< m; ++i)
	{
		ret = l[i] - r[i];
		if( ret == 0)
			continue;
		else 
			return ret;
	}
	return ret;
}

void solve()
{
	int i;
	int ans[NMAX]={0};
	int total =0;
	qsort(str,n,sizeof(char)*MMAX, cmp);
	total = 0;
	for(i=1; i<=n; ++i)
	{
		if(strcmp(str[i], str[i-1]) ==0 )
		{
			total++;
		}
		else
		{
			ans[total]++;
			total =0;
		}
	}
	for(i=0;i<n;i++)
	{
		printf("%d\n",ans[i]);
	}

}
int main()
{
	int i;
//	freopen("in.txt","r",stdin);
	while(1)
	{
		memset(str,0,sizeof(str));
		scanf("%d%d\n",&n, &m);
		if(!n)
			break;
		input();
		solve();

	}	
}


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -