Advertisement
Guest User

Untitled

a guest
Nov 17th, 2017
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. var test = function(should_break) {
  2.     var total = 0;
  3.     var streak = 1;
  4.  
  5.     for (var i = 0; i < 100; ++i) {
  6.         if (should_break(total, streak, i)) {
  7.             streak = 1;
  8.         } else {
  9.             let success = Math.random() < 0.5;
  10.             total += (success ? 1 : -1) * streak;
  11.             streak++;
  12.         }
  13.     }
  14.     return total;
  15. };
  16.  
  17.  
  18. var test_strat = function(strat) {
  19.     var stats = {
  20.         "avg": 0,
  21.         "num_pos": 0,
  22.         "max": 0,
  23.         "min": 0,
  24.     };
  25.     const n = 1000000;
  26.     for (var i = 0; i < n; ++i) {
  27.         let value = test(strat);
  28.         stats['avg'] += value;
  29.         stats['num_pos'] += (value > 0);
  30.         stats['max'] = Math.max(stats['max'], value);
  31.         stats['min'] = Math.min(stats['min'], value);
  32.     }
  33.     stats['avg'] /= n;
  34.     stats['num_pos'] /= n;
  35.     return stats;
  36. };
  37.  
  38. test_strat(
  39.     (total, streak, index) => total > (100 - index)
  40. );
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement