蛤希。

用map会T。

只需要枚举删掉哪个字符,然后算出每个的hash值,sort一遍就行了。

用map会T!!!

// It is made by XZZ
#include<cstdio>
#include<algorithm>
#include<map>
#define il inline
#define rg register
#define vd void
#define sta static
typedef long long ll;
il int gi(){
rg int x=0,f=1;rg char ch=getchar();
while(ch<'0'||ch>'9')f=ch=='-'?-1:f,ch=getchar();
while(ch>='0'&&ch<='9')x=x*10+ch-'0',ch=getchar();
return x*f;
}
#define mod 998244353
#define Mod 10000000009
char s[210];
ll base[210],f[210],F[30010][210],Base[210],g[210],G[30010][210];
ll S[30010];
int main(){
#ifdef xzz
freopen("3555.in","r",stdin);
freopen("3555.out","w",stdout);
#endif
int n=gi(),L=gi();gi();
ll ans=0;
base[0]=1;for(rg int i=1;i<=L;++i)base[i]=base[i-1]*8237%mod;
Base[0]=1;for(rg int i=1;i<=L;++i)Base[i]=Base[i-1]*19260817%mod;
for(rg int yyb=1;yyb<=n;++yyb){
scanf("%s",s+1);
for(rg int i=1;i<=L;++i)f[i]=(s[i]*233%2333)*base[i]%mod;
F[yyb][1]=0;
for(rg int i=1;i<=L;++i)F[yyb][1]+=f[i];
F[yyb][1]%=mod;for(rg int i=1;i<=L;++i)F[yyb][i]=F[yyb][1];
for(rg int i=1;i<=L;++i)F[yyb][i]=(F[yyb][i]-f[i]+mod)%mod;
for(rg int i=1;i<=L;++i)g[i]=(s[i]*233%2333)*Base[i]%Mod;
G[yyb][1]=0;
for(rg int i=1;i<=L;++i)G[yyb][1]+=g[i];
G[yyb][1]%=Mod;for(rg int i=1;i<=L;++i)G[yyb][i]=G[yyb][1];
for(rg int i=1;i<=L;++i)G[yyb][i]=(G[yyb][i]-g[i]+Mod)%Mod;
}
for(rg int i=1;i<=L;++i){
for(rg int j=1;j<=n;++j)S[j]=F[j][i]*mod+G[j][i];
std::sort(S+1,S+n+1);
int t=0;
for(rg int j=1;j<=n;++j)
if(S[j]==S[j-1])ans+=t++;
else t=1;
}
printf("%lld\n",ans);
return 0;
}

【BZOJ3555】企鹅QQ的更多相关文章

  1. [bzoj3555]企鹅QQ(hash)

    3555: [Ctsc2014]企鹅QQ Time Limit: 20 Sec  Memory Limit: 256 MBSubmit: 1645  Solved: 616[Submit][Statu ...

  2. bzoj3555 企鹅QQ

    3555: [Ctsc2014]企鹅QQ Time Limit: 20 Sec  Memory Limit: 256 MBSubmit: 1640  Solved: 613 Description P ...

  3. p4503&bzoj3555 企鹅QQ

    传送门(洛谷) 传送门(bzoj) 题目 PenguinQQ是中国最大.最具影响力的SNS(Social Networking Services)网站,以实名制为基础,为用户提供日志.群.即时通讯.相 ...

  4. 【BZOJ3555】 [Ctsc2014]企鹅QQ

    BZOJ3555 [Ctsc2014]企鹅QQ Solution 只需要前缀Hash,然后考虑每一段的贡献就好了!!! 代码实现 #include<stdio.h> #include< ...

  5. 【BZOJ3555】企鹅QQ(字符串哈希)

    [BZOJ3555]企鹅QQ(字符串哈希) 题面 BZOJ 题解 把前缀哈希一下,后缀哈希一下 枚举哪个位置不选,然后检查一下相同就行了.. 为什么我的\(Hash\)老是\(WA\), 为什么\(Z ...

  6. 【BZOJ3555】[Ctsc2014]企鹅QQ hash

    [BZOJ3555][Ctsc2014]企鹅QQ Description PenguinQQ是中国最大.最具影响力的SNS(Social Networking Services)网站,以实名制为基础, ...

  7. 【BZOJ-3555】企鹅QQ 字符串Hash

    3555: [Ctsc2014]企鹅QQ Time Limit: 20 Sec  Memory Limit: 256 MBSubmit: 1545  Solved: 593[Submit][Statu ...

  8. bzoj3555: [Ctsc2014]企鹅QQ

    将字符串hash.不难写.然而1.注意用longlong2.数组大小注意...3.似乎别人都用的unsigned long long ?. #include<cstdio> #includ ...

  9. BZOJ 3555: [Ctsc2014]企鹅QQ [字符串哈希]【学习笔记】

    3555: [Ctsc2014]企鹅QQ Time Limit: 20 Sec  Memory Limit: 256 MBSubmit: 2046  Solved: 749[Submit][Statu ...

  10. BZOJ 3555: [Ctsc2014]企鹅QQ hash

    3555: [Ctsc2014]企鹅QQ Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://www.lydsy.com/JudgeOnline/p ...

随机推荐

  1. 设计多选一按钮ChooseOnlyButton

    设计多选一按钮ChooseOnlyButton 效果: 源码: ChooseOnlyButton.h 与 ChooseOnlyButton.m // // ChooseOnlyButton.h // ...

  2. 使用 Versions for mac 进行版本控制

    刚开始折腾 xcode 5.1 自己的svn版本控制,应该很好用,但是用不好,搞了半天也没法把工程传到svn服务器上去. 在 xcode 5.1 Soure Control 中弄 点击 Check O ...

  3. 上拉加载下拉刷新控件WaterRefreshLoadMoreView

    上拉加载下拉刷新控件WaterRefreshLoadMoreView 效果: 源码: // // SRSlimeView // @author SR // Modified by JunHan on ...

  4. QuickBI助你成为分析师-数据建模(二)

    摘要: 数据集编辑功能界面介绍以及常见问题总结. 在数据集编辑界面可以进行数据建模来更好的展示数据,创建数据集默认将数值类型字段作为度量,日期.字符串等类型作为维度,度量可以根据维度分组展示.下面来介 ...

  5. 铁乐学Python_day06-整数和字符串小数据池

    python小数据池(内存地址) 今天来学习认识一下python中的小数据池. 我们都知道 ==是用来作比较,要是两个变量的数值相等, 用==比较返回的bool值会是True: a = 1000 b ...

  6. 深入浅出SharePoint——配置List通过邮件来接收内容

    应用场景:在SharePoint的开发中,我们经常需要通过接收并解析Mail的方式来进行数据通信. 解决方案:通常有两种方式:一种是直接使用公司的Exchange服务器,一种是在SharePoint ...

  7. ZT Android 4.2 BT系统之蓝牙关闭过程全跟踪

    Android 4.2 BT系统之蓝牙关闭过程全跟踪 分类: android 2013-08-03 00:34 2252人阅读 评论(10) 收藏 举报 代码位置:       frameworks/ ...

  8. 前端技术-HTML页面的加载

    HTML页面的加载 HTML页面的加载实际上是基于http过程+浏览器对数据的解析渲染. http协议的请求过程是基于TCP协议的.http是要基于TCP连接基础上,简单的说,TCP单纯建立连接,不涉 ...

  9. Curator 基本API

    package bjsxt.curator.base; import java.util.List; import java.util.concurrent.ExecutorService; impo ...

  10. Odoo作为后端时如何返回数据给webapp、移动端app

    转载请注明原文地址:https://www.cnblogs.com/cnodoo/p/9307315.html  使用jinja2渲染的页面,可以直接在调用template.render()时传递参数 ...