题意  

在 $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 ;
}

bzoj3097 hash killer 1——构造题的更多相关文章

  1. bzoj3097 Hash Killer I

    Hash Killer I Time Limit: 5 Sec Memory Limit: 128 MBSec Special Judge Description 这天天气不错,hzhwcmhf神犇给 ...

  2. BZOJ3098: Hash Killer II(构造)

    Time Limit: 5 Sec  Memory Limit: 128 MBSec  Special JudgeSubmit: 2162  Solved: 1140[Submit][Status][ ...

  3. 【BZOJ3097】 Hash Killer I

    BZOJ3097 Hash Killer I Solution 考虑它是自然溢出,相当于就是对\(2^{63}\)取膜 那么就有\(aaaaa...aaa\)(多于64个)和\(baaaa...aaa ...

  4. BZOJ 3097: Hash Killer I【构造题,思维题】

    3097: Hash Killer I Time Limit: 5 Sec  Memory Limit: 128 MBSec  Special JudgeSubmit: 963  Solved: 36 ...

  5. BZOJ 3098: Hash Killer II(新生必做的水题)

    3098: Hash Killer II Time Limit: 5 Sec  Memory Limit: 128 MBSec  Special JudgeSubmit: 1555  Solved: ...

  6. 3097: Hash Killer I

    3097: Hash Killer I Time Limit: 5 Sec  Memory Limit: 128 MBSec  Special JudgeSubmit: 425  Solved: 15 ...

  7. 3098: Hash Killer II

    3098: Hash Killer II Time Limit: 5 Sec  Memory Limit: 128 MBSec  Special JudgeSubmit: 1219  Solved:  ...

  8. 从Hash Killer I、II、III论字符串哈希

    首先,Hash Killer I.II.III是BZOJ上面三道很经典的字符串哈希破解题.当时关于II,本人还琢磨了好久,但一直不明白为啥别人AC的代码都才0.3kb左右,直到CYG神犇说可以直接随机 ...

  9. BZOJ 3097: Hash Killer I

    3097: Hash Killer I Time Limit: 5 Sec  Memory Limit: 128 MBSec  Special Judge[Submit][Status][Discus ...

随机推荐

  1. poj3660(floyd最短路)

    题目链接:https://vjudge.net/problem/POJ-3660 题意:给出一个有向图,n个结点,每个结点的权值为[1,n]中的一个独特数字,m条边,如果存在边a->b,说明a的 ...

  2. 怎样ubuntu下命令行终端显示短路径

    参考:http://blog.sina.com.cn/s/blog_b71132f001016cmm.html ubuntu的终端命令行默认是长路径,即把路径深度全部显示出来,操作起来不是很方便,下面 ...

  3. Spring 中的统一异常处理

    在具体的SSM项目开发中,由于Controller层为处于请求处理的最顶层,再往上就是框架代码的.因此,肯定需要在Controller捕获所有异常,并且做适当处理,返回给前端一个友好的错误码. 不过, ...

  4. heroku 的用法

    heroku 安装cli npm install -g heroku ubuntu 下 sudo snap install --classic heroku 安装 npm init -y heroku ...

  5. 全能中间件 REST API 使用手册

    全能中间件 REST API 使用手册 Ver:17.6.24 技术支持QQ:64445322 QQ群:339616649    任何第三方应用或网站都可以通过使用开放API为用户提供实时优质的服务. ...

  6. firefox 获取xpath

    在做一个爬虫是,输入内容后,会自动显示内容,而且只能选择,不能根据输入的提交,一点就失去焦点,找不到相关内容 后来发现firefox的查看元素的最左边的类似于鼠标尖头的按钮,就是确保这种情况下,去查找 ...

  7. 从零开始学Flask框架-007

    Flash消息 from flask import flash 渲染Flash消息,在基模板base.html中引入get_flashed_messages() {% extends "bo ...

  8. js图片向下流动

    <div id=demo style=overflow:hidden;height:;width:;background:#f4f4f4;color:#ffffff><div id= ...

  9. 在Windows平台搭建C语言开发环境

    一.在Windows平台搭建DEV C++集成开发环境     官网 https://sourceforge.net/projects/orwelldevcpp/ 中下载Dev C++运行即可 环境准 ...

  10. C#基础之结构和类

    大家在平时的工作中对类的使用应该是比较多的,但是在结构使用方面可能稍微少点,这里我就总结一下结构和类的一些异同之处,如有错误之处,还请指正. 结构是值类型,类是引用类型,结构通常用来封装小型相关变量组 ...