POJ 2418 Hardwood Species
2016-09-09 17:39
399 查看
链接:http://poj.org/problem?id=2418
前面三段认真看看,可以学习到很多树种的英文名称【正经脸 (/▽\=)】
题意:给你一堆字符串,求出每种字符串占总体的百分比
首先想到的是Trie树【啊......写Trie树好烦啊】然后想到STL的map,string类的key和int(double)类的value
时间为10s,确实很长
因为使用cincout,正常情况8s以上
加 ios::sync_with_stdio(false) 后减少到2000ms
代码:
#include <iostream>
#include <map>
#include <iterator>
#include <iomanip>
using namespace std;
int main() {
//ios::sync_with_stdio(false);
int sum=0;
map <string,double> m;
string str;
while(getline(cin,str)) {
m[str]++;
sum++;
}
map <string,double> ::iterator it=m.begin();
while(it!=m.end()) {
cout<<setiosflags(ios::fixed)<<setprecision(4)<<it->first<<" "<<it->second/sum*100<<"\n";
it++;
}
return 0;
}
前面三段认真看看,可以学习到很多树种的英文名称【正经脸 (/▽\=)】
题意:给你一堆字符串,求出每种字符串占总体的百分比
首先想到的是Trie树【啊......写Trie树好烦啊】然后想到STL的map,string类的key和int(double)类的value
时间为10s,确实很长
因为使用cincout,正常情况8s以上
加 ios::sync_with_stdio(false) 后减少到2000ms
代码:
#include <iostream>
#include <map>
#include <iterator>
#include <iomanip>
using namespace std;
int main() {
//ios::sync_with_stdio(false);
int sum=0;
map <string,double> m;
string str;
while(getline(cin,str)) {
m[str]++;
sum++;
}
map <string,double> ::iterator it=m.begin();
while(it!=m.end()) {
cout<<setiosflags(ios::fixed)<<setprecision(4)<<it->first<<" "<<it->second/sum*100<<"\n";
it++;
}
return 0;
}
相关文章推荐
- POJ 2418 Hardwood Species
- poj 2418 Hardwood Species
- poj_2418 Hardwood Species (字典序Trie树)
- 二叉排序树:POJ2418-Hardwood Species(外加字符串处理)
- poj 2418 Hardwood Species 快排
- POJ 2418 Hardwood Species【字典树 / map】
- POJ-2418 Hardwood Species
- POJ 题目2418 Hardwood Species(map)
- POJ 2418 Hardwood Species (字典树 || map)
- poj 2418 Hardwood Species(字典树)
- POJ 2418 Hardwood Species(字典树)
- POJ 2418 Hardwood Species
- POJ 2418 Hardwood Species
- POJ 2418 Hardwood Species【字典树 / map】
- POJ2418----Hardwood Species
- 【POJ】2418 Hardwood Species
- POJ 2418 Hardwood Species(二叉排序树)
- poj 2418 Hardwood Species (trie 树)
- 【字典树】POJ 2418 Hardwood Species
- [字典树] poj 2418 Hardwood Species