当前位置: 首页 > news >正文

P13857 [SWERC 2020] Gratitude

题意

给定两个变量 \(N\)\(K\) ,输入 \(3N\) 件事,求前 \(K\) 个最频繁干的事

重点:如果两个字符串一样多,则按下标 \(i\) 来排序。


思路

我们先思考保存字符串数量的问题,这时候就要用到 map 来保存,但我借助了一点哈希的思路,把字符串转换成了 \(id\) ,但要再开一个数组 \(w_i\) 来保存每个 \(id\) 表示的字符串(好像有点麻烦)

接下来保存成数组的字符串数量排序一遍(要用结构体保存数量,第几个和第一次出现时第几个)

最后扫一遍,输出前 \(k\)\(w_{id}\) 就A了( \(id\) 为排序后的 \(a_i\) 里的 \(p\) )


代码

#include <bits/stdc++.h>
using namespace std;
const int N=100000;
map<string,int>mp;;;;           //记录s的个数,也就是每个事件的次数 
int cnt=0;
string w[N];                    //记录下标为i时字符串(事件)是什么 
struct node
{int x=0,id,p;               //字符串个数,实际第几个,第一次第几个出现 
}a[N];
int s_id(string s)              //字符串转id 
{if (!mp[s]) mp[s]=(++cnt);  //如果有出现过 return mp[s];
}
bool cmp(node x,node y)         //排序 
{if (x.x!=y.x) return x.x>y.x;return x.id>y.id;
}
int main()
{int n,k;cin >>n>>k;string s;getline(cin,s);            //抵掉开始的换行 for (int i=1;i<=3*n;i++){getline(cin,s);
//		cout <<s<<endl;int pos=s_id(s);      //转id 
//		cout <<pos<<" ";a[pos].x++,a[pos].id=i,a[pos].p=pos,w[pos]=s;   //赋值 }
//	for (int i=1;i<=cnt;i++) cout <<a[i].x<<" ";sort(a+1,a+cnt+1,cmp);   //排序 
//	cout <<cnt<<endl;for (int i=1;i<=k;i++) cout <<w[a[i].p]<<endl;     //最后输出保存的前k个字符串 return 0; 
}

俺的第一篇题解,求过

http://www.jsqmd.com/news/424498/

相关文章:

  • 说一说湖南环境和住宿俱佳的专科学校,适合长期住校不 - 工业品牌热点
  • 快速搞定山东一卡通回收流程,这些技巧你必须知道! - 团团收购物卡回收
  • 2026年全国靠谱的耐候钢信誉厂家推荐,天津申强钢铁为何受欢迎 - 工业设备
  • 2026年知名的机械手码垛机/高位码垛机专业制造厂家推荐 - 行业平台推荐
  • 连接数字世界的桥梁:深入理解API的工作原理与应用
  • 如何选择最佳话费卡回收线上平台?高性价比分享指南 - 团团收购物卡回收
  • 2026春note
  • 2026年源头耐候钢厂家推荐,天津申强钢铁服务全国 - 工业品网
  • 探讨2026年好用的GEO推广机构,天津迅淼科技优势凸显 - myqiye
  • 2026年比较好的国漫IP授权/潮玩IP授权实力工厂推荐 - 行业平台推荐
  • 构建企业级测试资产复用体系:质量中台的标准化实践路径
  • 选性价比高的低温融雪工业盐,大颗粒工业盐加工厂专业度哪家强 - 工业品牌热点
  • 2026年市场上可靠的AI搜索企业口碑推荐榜,抖音广告代运营/微信朋友圈广告,AI搜索公司哪个好 - 品牌推荐师
  • 京东E卡回收攻略,快速变现秘诀! - 团团收购物卡回收
  • 2026年上海智能运维智算中心展/智算中心展行业口碑推荐 - 行业平台推荐
  • 接口幂等设计
  • 2026年AI搜索优化公司权威榜单:维艺网络如何以GEO定义品牌智能增长新范式 - 呼呼拉呼
  • 2026年质量好的保安公司/高端场所保安公司高效服务推荐 - 行业平台推荐
  • 2026年国防特色专业的靠谱高校,为学生搭建多元成长平台 - 工业品网
  • 2026年综合型农文旅景区策划/实战景区策划规划案例丰富推荐 - 行业平台推荐
  • 2026年九江性价比高的拥有国防特色专业的学校,江西万通职业学院入选 - 工业设备
  • Inno Setup Compiler 超详细使用教程:从零打包 Windows 软件
  • Java高并发核心知识点完整总结
  • 2026年质量好的日本西铁城机床/西铁城宫野机床行业推荐 - 行业平台推荐
  • 湖南口碑好的代理记账品牌盘点,企鑫财税经验丰富吗? - myqiye
  • 2026年经验丰富的shopfiy网站谷歌优化/谷歌优化实力推荐 - 行业平台推荐
  • 话费卡如何在线回收?教你找到放心平台的秘诀 - 团团收购物卡回收
  • 2026年评价高的服务器机箱/服务器网卡优质供应商推荐 - 行业平台推荐
  • 解读2026年湖北开放教育,探讨中专学历能报开放教育吗及转专业问题 - 工业品牌热点
  • 2026年质量好的KNX智能家居系统售后/KNX智能家居灯光源头工厂推荐 - 行业平台推荐