public SplitRound(ScoreSet scoreset, int rounds) { _ScoreSet = scoreset; _Percent = _ScoreSet.Percent(); _Rounds = rounds; }
public BruteForce(ScoreSet scoreset, EnumerateSubsets es) { _ScoreSet = scoreset; _ES = es; }
public void RunBlock(object sender, DoWorkEventArgs e) { Random r = new Random(_Random.Next()); EnumerateSubsets es = new EnumerateSubsets(n, k); ScoreSet s = new ScoreSet(r); s.Generate(n); while (_Trials < _Amount) { for (int i = 0; i < _TrailsPerUpdate; i++) { SplitRound sr = new SplitRound(s, 1); sr.Run(k); BruteForce bf = new BruteForce(s, es); bf.Run(k); if (bf.DropPercent != sr.DropPercent) { Misses++; } } Trials += _TrailsPerUpdate; } }