Crypto-ThreadCracker

题目背景

线程调度大师,我还记得你…

题干

hint 0

多线程争抢资源造成的熵很不稳定,有分布不均的情况.
举一个例子:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include<bits/stdc++.h>
using namespace std;
int tmp=0;
void ad(){
for(int i=1;i<=100000;++i){
tmp+=1;
}
}
int main(){
vector<thread>vc;
for(int i=1;i<=10;++i){
vc.emplace_back(thread(ad));
}
for(int i=0;i<10;++i){
vc[i].join();
}
cout<<tmp;
return 0;
}

Fluu为了解决上面代码中 + 有交换律所以区分不清的情况,对每一步引入了伪随机数生成器和sha256来消掉线性,于是就有了这个题.

提交