☰
c++字符串哈希超级简单版
2026/9/26 7:11:29 网站建设 项目流程

有一天,本蒟蒻刷到了一道题:

题目

字符串哈希

难度

0.02

描述

给定 N 个字符串(字符串内包含数字、大小写字母,大小写敏感),求 N 个字符串中共有多少个不同的字符串。
N<=10000,每个字符串的长度<=1500

输入描述

第一行输入N,之后输入N个字符串

输出描述

输出包含一行,包含一个整数,为不同的字符串个数。

样例输入 1

5 abc aaaa abc abcc 12345

样例输出 1

4

当时我震惊了:提高组的算法既然难度辣么低qwq

突然,我想到了一种方法:STL中的set!

set有自动排序和去重的功能,可以插入、求元素个数,于是,我逝了亿下:

#include<bits/stdc++.h> using namespace std; set<string>s; string st; int main(){ int n; cin>>n; for(int i=1;i<=n;i++){ cin>>st; s.insert(st); } cout<<s.size(); }

当时运行的画面:

最后,给大家总结一下:

看到哈希不要慌,用STL中的set就能轻松干掉了~

补充:

set插入元素:

s.insert(x);

set求元素个数:

int len=s.size();

蒟蒻创作不容易,请各位dalao点评。

有什么不清楚的,欢迎评论区留言~

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询