Advertisement
Guest User

Untitled

a guest
May 22nd, 2019
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.75 KB | None | 0 0
  1. export async function main(ns) {
  2. ns.disableLog("sleep");
  3. while (true) {
  4. let servers = ns.read("/t/servers.txt").split("\r\n");
  5. for (let x = 0; x < servers.length; x++) {
  6. let server = servers[x];
  7. let files = ns.ls(server, ".cct");
  8. for (let y = 0; y < files.length; y++) {
  9. let file = files[y];
  10. let type = ns.codingcontract.getContractType(file, server);
  11. let data = ns.codingcontract.getData(file, server);
  12. ns.print(type);
  13. let start = performance.now();
  14. let answer = solveContract(type, data);
  15. ns.print(performance.now() - start);
  16. if (!answer){
  17. ns.tprint("Contract fail"+" "+type);
  18. }
  19. start = performance.now();
  20. ns.codingcontract.attempt(answer, file, server);
  21. ns.print(performance.now() - start);
  22. await ns.sleep(1000);
  23. }
  24. await ns.sleep(200);
  25. }
  26. await ns.sleep(10000);
  27. }
  28. }
  29.  
  30. function solveContract(type, data) {
  31. switch (type) {
  32. case "Find Largest Prime Factor":
  33. return solveLargestPrimeFactor(data);
  34. case "Subarray with Maximum Sum":
  35. return solveSubarrayMaximumSum(data);
  36. case "Total Ways to Sum":
  37. return solveTotalWaysSum(data);
  38. case "Spiralize Matrix":
  39. return solveSpiralizeMatrix(data);
  40. case "Array Jumping Game":
  41. return solveArrayJumpingGame(data);
  42. case "Merge Overlapping Intervals":
  43. return solveMergeOverlappingIntervals(data);
  44. case "Generate IP Addresses":
  45. return solveGenerateIPAddresses(data);
  46. case "Algorithmic Stock Trader I":
  47. return solveAlgorithmicStockTrader1(data);
  48. case "Algorithmic Stock Trader II":
  49. return solveAlgorithmicStockTrader2(data);
  50. case "Algorithmic Stock Trader III":
  51. return solveAlgorithmicStockTrader3(data);
  52. case "Algorithmic Stock Trader IV":
  53. return solveAlgorithmicStockTrader4(data);
  54. case "Minimum Path Sum in a Triangle":
  55. return solveMinimumPathSumTriangle(data);
  56. case "Unique Paths in a Grid I":
  57. return solveUniquePathsGrid1(data);
  58. case "Unique Paths in a Grid II":
  59. return solveUniquePathsGrid2(data);
  60. case "Sanitize Parentheses in Expression":
  61. return solveSanitizeParenthesesExpression(data);
  62. case "Find All Valid Math Expressions":
  63. return solveFindAllValidMathExpressions(data);
  64. default:
  65. ns.tprint("Unknown contract type");
  66. ns.print("Unknown contract type");
  67. }
  68. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement