题意  

在 $u64$ 自然溢出下,请输出一串字符串和 $L$,使得对任意 $Base$ 都能找到两个长度为 $L$ 的字串的 $Hash$ 值相同。

分析

$u64$ 自然溢出等价于两个哈希值模 $2^{64}$ 相等。

如果 $Base$ 为偶数,只需构造两串长度至少为65的串且只有最高位不同, 因为偶数肯定含有因子2。

如果 $Base$ 为奇数,构造 $i=12$ 的串和其反串。

详细过程推荐 博客

#include<bits/stdc++.h>
using namespace std; char s[( << ) + ]; int main()
{
s[] = 'a';
int n = ;
for(int i = ;i <;i++)
{
for(int j = ;j < n;j++)
{
if(s[j] == 'a') s[j+n] = 'b';
else s[j+n] = 'a';
}
n <<= ;
}
int l = n >> ;
printf("%d %d\n", n + + l, l);
printf("%s", s);
for(int i = ;i < l+;i++) printf("a");
printf("\n");
return ;
}

最新文章

  1. react native 刷新机制----通知
  2. 【Mail】Tomcat提供JNDI方式支持JavaMail(三)
  3. AngularJS 使用ngOption实现下拉列表
  4. Kafka 快速起步(作者:杜亦舒)
  5. C#获取汉字拼音
  6. Beej网络socket编程指南
  7. 关于NSNull和nil
  8. AsyncTask和Handler的对比
  9. 从事web前端两年半后的迷茫
  10. Introduction to SharePoint hierarchy
  11. python 之 批量替换文件中文本后缀
  12. java.text.DateFormat 多线程并发问题
  13. 少侠学代码系列(一)-&gt;JS起源
  14. Pains and Sickness 学习笔记
  15. 网络编程(1)—TCP
  16. 如何查看memcache的性能
  17. (转载)用C#实现MySQL建库及建表
  18. 为什么要用Markov chain Monte Carlo (MCMC)
  19. Netty5.x 和3.x、4.x的区别及注意事项(官方翻译)
  20. @JsonIgnore的源码说明

热门文章

  1. (二)linux 学习 -- 探究操作系统
  2. SQL语言(一)
  3. 转:数据库实例自动crash并报ORA-27157、ORA-27300等错误
  4. python 之 subprocesss 模块、configparser 模块
  5. WUSTOJ 1305: 最短路(Java)
  6. Windows方便得运行jar文件
  7. Maven添加依赖后如何在IDEA中引用
  8. 自定义标签之inclusion_tag
  9. [技术翻译]您应该知道的13个有用的JavaScript数组技巧
  10. python day1 python介绍,安装及运算符