typedef long long ll;
typedef unsigned long long ull;
#define maxn 1005
struct My_Hash
{
ull base=;
ull p[maxn],ha[maxn];
void Insert(char s[])
{
int len=strlen(s+);
p[]=,ha[]=;
for(int i=;i<=len;i++)
{
p[i]=p[i-]*base;
ha[i]=ha[i-]*base+(ull)s[i];
}
}
ull gethash(int l,int r)
{
return (ull)ha[r]-ha[l-]*p[r-l+];
}
}S;
int main()
{
char s[maxn];
cin>>s+;
S.Insert(s);
int T;
cin>>T;
while(T--)
{
int l,r;
cin>>l>>r;
cout<<S.gethash(l,r)<<endl;
} return ;
}

参考博客:链接1、链接2

最新文章

  1. 关于全排列 next_permutation() 函数的用法
  2. 写出好的 commit message
  3. Linux用sendmail发信失败,提示Connection refused by [127.0.0.1]
  4. 无法获取有关Windows NT 组\用户‘组\用户’的信息,错误代码0x5(Microsoft SQL Server,错误:15404)
  5. Linux 多核下绑定硬件中断到不同 CPU(IRQ Affinity) 转
  6. Grok debugger
  7. javascript - 工作笔记 (事件绑定二)
  8. 怎么理解js的面向对象编程
  9. 开发人员的福音:微软、谷歌、Mozilla将他们所有的web API文档放在同一个地方
  10. AI时代:推荐引擎正在塑造人类
  11. flask 实现登录 登出 检查登录状态 的两种方法的总结
  12. win10系统彻底卸载Mysql
  13. 【SCOI2015】小凸想跑步
  14. android 编程之 PopupWindow 窗口的弹出
  15. linux令普通用户拥有root权限
  16. SDN期末作业验收
  17. sc58x config
  18. Python - Django - ORM 实例
  19. An application icon
  20. BZOJ5372: PKUSC2018神仙的游戏

热门文章

  1. $.param()序列化对象
  2. git windows下换行符问题
  3. webUploader---实现大文件断点续传
  4. #333 Div2 Problem B Approximating a Constant Range (尺取 &amp;&amp; RMQ || 尺取 &amp;&amp; multiset)
  5. Selenium 多表单(frame/iframe)切换
  6. Pollard&#39;s Rho算法简单总结
  7. linux日常---2、lamp.sh安装lamp环境中的linux操作
  8. 【转】UNITY中相机空间,投影空间的正向问题
  9. 在windows下使用Mingw搭建模拟Linux
  10. EDM数据:如何选择邮件服务器平台