蓝桥杯ALGO-87字串统计
来源:互联网 发布:傅园慧网络直播完整版 编辑:程序博客网 时间:2024/06/10 04:26
建立了两个类,类S储存字符串出现的次数和时间,类T储存字符串和相应的次数和时间,算法思想就是将string 和相应的储存在类S中的信息先放入map中储存,所有字串统计完毕后,再转移到 vector 中储存并按指定要求排序,输出结果即可。C++代码如下:
#include <bits/stdc++.h>using namespace std;struct S{ int num; int time; S(int n=0,int t=0):num(n),time(t) { }};struct T{ string str; S s; T(string strr,S ss):str(strr),s(ss) { } bool operator <(const T&t)const { return this->s.num>t.s.num?true: this->s.num==t.s.num&&this->str.size()>t.str.size()?true: this->s.num==t.s.num&&this->str.size()==t.str.size()&&this->s.time<t.s.time?true: false; }};int main(int argc, char *argv[]){ string s; int n; cin>>n; cin>>s; map<string,S>m; int c=0; for(int i=n;i<=s.size();++i) { for(int j=0;j<=s.size()-i;++j) { string ss=s.substr(j,i); if(m.find(ss)==m.end()) { m.insert({ss,S(1,c++)}); } else { ++m[ss].num; } } } vector<T>v; for(map<string,S>::iterator it=m.begin();it!=m.end();++it) { v.push_back(T(it->first,it->second)); } sort(v.begin(),v.end()); cout<<v[0].str<<endl;}
阅读全文
0 0
- 蓝桥杯ALGO-87字串统计
- 蓝桥杯 ALGO-87 算法训练 字串统计
- 蓝桥杯-算法训练-ALGO-87 字串统计 Java实现
- 蓝桥杯 ALGO-88 算法训练 字串统计
- 蓝桥杯 ALGO-58 算法训练 字串逆序
- 蓝桥杯 ALGO-58 算法训练 字串逆序
- 蓝桥杯 ALGO-87 子串统计(stl)
- 【蓝桥杯训练】字串统计
- 字串统计 --- 蓝桥杯
- 蓝桥杯 - 字串统计
- 蓝桥杯—字串统计
- 蓝桥杯:字串统计
- java 蓝桥杯 字串统计
- 蓝桥杯 字串统计
- 蓝桥杯 算法训练 字串统计
- 蓝桥杯 算法训练 字串统计
- 蓝桥杯--算法训练 字串统计
- 蓝桥杯 算法训练 字串统计
- 前端的css--超出2行就隐藏并且出现省略
- ios command
- 智能音箱
- 机房收费系统之添加删除用户
- NPDP认证 考试费用 国内外有别啊!
- 蓝桥杯ALGO-87字串统计
- cjson中的稀疏数组encode
- 2017年度总结
- matplotlib——sin,cos
- System.getProperties()系統属性
- Ubuntu16.04下Sublime Text3安装Emmet等插件
- NetBeans 运行java web项目报错 build-impl.xml:1045: 尚未部署该模块
- 【React】React实现手风琴效果
- 中式Dao开源框架(MicroDao)