《哈夫曼编码》hdu acm 5.2.8 huffman编码

原创 2015年11月18日 09:45:19
#include<cstdio>  
#include<cstring>  
#include<set>  
using namespace std;
int haffman(char *x)
{
	int len = strlen(x);
	int i, t, sum, cnt[26];
	multiset<int>m;
	memset(cnt, 0, sizeof(cnt));
	for (i = 0;i<len;i++)
	{
		t = x[i] - 'a';
		cnt[t]++;
	}
	for (i = 0;i<26;i++)
	{
		if (cnt[i])
		{
			m.insert(cnt[i]);
		}
	}
	if (m.size() == 1)
	{
		return *m.begin();
	}
	else
	{
		sum = 0;
		while (m.size()>1)
		{
			t = 0;
			for (i = 0;i<2;i++)
			{
				t += *m.begin();
				m.erase(m.begin());
			}
			m.insert(t);
			sum += t;
		}
		return sum;
	}
}
int main()
{
	int cas, n;
	scanf("%d", &cas);
	while (cas--)
	{
		char s[1000];
		scanf("%d%s", &n, s);
		if (haffman(s)>n)
			printf("no\n");
		else
			printf("yes\n");
	}
	return 0;
}
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/a709743744/article/details/49902583

哈夫曼编码(贪心)

算法设计例题:哈夫曼编码(贪心) memory limit: 32768KB    time limit: 1000MS accept: 4    submit: 8 Descrip...
  • chaoyuan899
  • chaoyuan899
  • 2013-03-03 13:53:29
  • 4316

算法练习七--哈夫曼编码C++实现

算法练习七–哈夫曼编码C++实现 好就没写博客了,今天在九度上遇到了个哈夫曼编码的oj题目,实现了下,发现自己大一时视之如恶魔的哈夫曼树的构造如今也能轻易实现了,哇哈哈,特此记一笔 一...
  • u012341163
  • u012341163
  • 2016-03-18 20:11:07
  • 3675

ACM哈夫曼树建立、哈夫曼编码C++实现

// 哈夫曼树.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include #...
  • gzw1623231307
  • gzw1623231307
  • 2017-02-22 07:05:15
  • 68

ACM--哈夫曼树--九度OJ-1172

九度oj地址:http://ac.jobdu.com/problem.php?pid=1172 时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:8168 解决:3641 ...
  • qq_26891045
  • qq_26891045
  • 2016-04-06 17:24:08
  • 927

onMouseDown和onPress的差异AS2

onMouseDown和onPress的差异_AS 2008-07-05 23:37為了要做出比Button物件更複雜的互動,我們通常會改用MovieClip來製作按鈕。如此一來,就需要處理event...
  • Dreamer_srb
  • Dreamer_srb
  • 2011-02-28 11:15:00
  • 792

哈夫曼树 ACM

题目描述:     在一个果园里,小明已经将所有的水果打了下来,并按水果的不同种类分成了若干堆,小明决定把所有的水果合成一堆。每一次合并,小明可以把两堆水果合并到一起,消耗的体力等于两堆水果的重...
  • sunwl_csdn
  • sunwl_csdn
  • 2016-07-13 22:30:38
  • 215

用模板写哈夫曼编码

今天,我们继续使用模板
  • yincheng01
  • yincheng01
  • 2014-09-10 18:14:10
  • 1535

PkU ACM 1521(哈夫曼编码)

虽然对huffman树的算法思想已经了解,但是却不能将之熟练的变成代码程序,希望通过此次训练使自己对huffman的编程思想更加的了解! (下面的程序为请教同学而得到!)#include #inc...
  • u011641865
  • u011641865
  • 2013-12-22 22:32:34
  • 1098

哈夫曼编码

哈夫曼编码
  • weixin_35867255
  • weixin_35867255
  • 2016-08-13 23:08:55
  • 483

哈夫曼编码树的经典题目

链接poj3253
  • zxdfc
  • zxdfc
  • 2014-08-01 10:26:44
  • 3250
收藏助手
不良信息举报
您举报文章:《哈夫曼编码》hdu acm 5.2.8 huffman编码
举报原因:
原因补充:

(最多只允许输入30个字)