HDU2527 构建哈夫曼树的灵巧运用
来源:互联网 发布:知联大厦 编辑:程序博客网 时间:2024/06/11 22:01
上课老师说了知道哈夫曼树叶子 不构图求二叉树的权 就是在构造哈夫曼树的时候运用构图的方法 把
每个结点的值加起来就是该数的权 证明 W=∑叶子权*该叶子层数 除了叶子的结点和就是这个树的权
构造一个树就知道了 结点的权 肯定是下一层结点的和 就好像 W=∑叶子权*该叶子层数 这个公式运用了
乘法分配律一样= =
#include <iostream>#include<cstdio>#include<cstring>#include<algorithm>using namespace std;int cmp(int a,int b){ return a<b;}int main(){ int t,n,hf[30];char yl[1000]; cin>>t; while(t--) { memset(hf,0,sizeof(hf)); cin>>n>>yl; int len=strlen(yl); for(int i=0;i<len;i++) hf[yl[i]-'a']++; for(int i=0;i<30;i++) if(hf[i]==0) hf[i]=99999999; sort(hf,hf+30,cmp); int ans=0; if(hf[1]==99999999) //这题有边界情况 如果没考虑这个 N=0 aaaaa的情况就会WA ans=hf[0]; while(hf[1]!=99999999) { ans+=(hf[0]+hf[1]); hf[0]+=hf[1]; hf[1]=99999999; sort(hf,hf+30,cmp); } if(ans<=n) printf("yes\n"); else printf("no\n"); } return 0;}
- HDU2527 构建哈夫曼树的灵巧运用
- HDU2527-哈夫曼树
- HDU2527(哈夫曼树)
- HDU2527
- hdu2527 Safe Or Unsafe 哈夫曼树
- hdu2527 Safe Or Unsafe 哈夫曼树
- 灵巧的jsp注入
- 剑走偏锋--灵巧的脚本攻击
- 建立灵巧结构的PHP程序
- BaseMapForm:一个高度灵巧实用的ActionForm
- 计算机的灵巧(HUD)操作系统
- 在PHP中使用灵巧的体系结构
- 一、ios的通过Xib构建UICollectionView的简单运用
- ios的通过Xib构建UICollectionView的简单运用
- 运用STP VTP HSRP 构建冗余的网络
- 运用STP VTP HSRP 构建冗余的网络
- PHP 运用 Redis 构建高性能的实时搜索
- 剑走偏锋——灵巧的旁注攻击
- VC++基于winpcap实现数据包分析
- iw 原文部分翻译
- 将C语言源代码编译成动态链接库
- 备份恢复1
- Visual C++ 2010 Express Tips: 用 C 和 C++ 创建动态链接库
- HDU2527 构建哈夫曼树的灵巧运用
- VC++实现遍历所有网络端口
- 雅思口语_家乡
- SVN精确地控制目录访问权限的经验总结
- CMake编译pxxx库的问题
- jsp
- 【ACM】杭电1178:Heritage from father 小心溢出!
- 11级_Java_曹建波 11.07 Jsp起源
- J2EE程序员需掌握的技术