fork(11) download
  1. process.stdin.resume();
  2. process.stdin.setEncoding('utf8');
  3.  
  4.  
  5. function Main() {
  6. var allNumbers = [];
  7. for (var i = 1; i < 100; i++) {
  8. allNumbers.push(GenerateSignalPromise(i));
  9. }
  10.  
  11. var currentSignal = _stackPop(allNumbers);
  12. while (currentSignal) {
  13. currentSignal.then(function (signal) {
  14. console.log(signal);
  15. currentSignal = _stackPop(allNumbers);
  16. }).catch(function (err) {
  17. console.log("Runtime Error!");
  18. console.log("Description:");
  19. console.log(err);
  20. });
  21. }
  22. }
  23.  
  24. function GenerateSignalPromise(number) {
  25. return new Promise(function (resolve, reject) {
  26. var types = {
  27. 3: "Fizz",
  28. 5: "Buzz"
  29. };
  30.  
  31. var fullSignal = "";
  32. for (type in types) {
  33. if (_checkingNum(number, type)) {
  34. fullSignal += types[type];
  35. }
  36. }
  37.  
  38. resolve(fullSignal || number);
  39. });
  40. }
  41.  
  42. function _stackPop (stack) {
  43. if (stack.length) {
  44. return stack.shift();
  45. }
  46. else {
  47. return null;
  48. }
  49. }
  50.  
  51. function _checkingNum(number, divider) {
  52. return number % divider == 0;
  53. }
  54.  
  55. Main();
Time limit exceeded #stdin #stdout 5s 711680KB
stdin
Standard input is empty
stdout
Standard output is empty