Hash Killer II(卡掉单值hash)
题意:构造一组卡单值 的数据。
思路:
如果一个房间里有23个或23个以上的人,那么至少有两个人的生日相同的概率要大于50%。
生日攻击:在 个数中随机选取, 的概率选到相同的数。
因为 , .
考虑取 即可。
保证 的方案个数超过 。
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=1e3+5,M=2e4+5,inf=0x3f3f3f3f,mod=1e9+7;
#define mst(a) memset(a,0,sizeof a)
#define lx x<<1
#define rx x<<1|1
#define reg register
#define PII pair<int,int>
#define fi first
#define se second
#define pb push_back
int n=1e5,l=20;
int main(){
printf("%d %d\n",n,l);
for(int i=1;i<=n;i++)
printf("%c",char(rand()%26+'a'));
return 0;
}