Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var test = function(should_break) {
- var total = 0;
- var streak = 1;
- for (var i = 0; i < 100; ++i) {
- if (should_break(total, streak, i)) {
- streak = 1;
- } else {
- let success = Math.random() < 0.5;
- total += (success ? 1 : -1) * streak;
- streak++;
- }
- }
- return total;
- };
- var test_strat = function(strat) {
- var stats = {
- "avg": 0,
- "num_pos": 0,
- "max": 0,
- "min": 0,
- };
- const n = 1000000;
- for (var i = 0; i < n; ++i) {
- let value = test(strat);
- stats['avg'] += value;
- stats['num_pos'] += (value > 0);
- stats['max'] = Math.max(stats['max'], value);
- stats['min'] = Math.min(stats['min'], value);
- }
- stats['avg'] /= n;
- stats['num_pos'] /= n;
- return stats;
- };
- test_strat(
- (total, streak, index) => total > (100 - index)
- );
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement