Program.cs 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. using System.Diagnostics;
  2. using Day13;
  3. if (args.Any(a => a == "--debug"))
  4. {
  5. Console.WriteLine("DEBUG");
  6. Console.WriteLine(Debugger.Launch());
  7. }
  8. if (args.Length < 1)
  9. {
  10. Console.WriteLine("Requires 1 args: inputFileName");
  11. return -1;
  12. }
  13. var inputFile = args[0];
  14. var parser = new Parser();
  15. var images = parser.Parse(inputFile).ToList();
  16. var sum = 0;
  17. foreach (var img in images)
  18. {
  19. var fold = img.FindFold();
  20. if (fold > 0)
  21. {
  22. img.Print();
  23. Console.WriteLine($"Original (Row): {fold}");
  24. sum += 100 * fold;
  25. }
  26. else
  27. {
  28. var img2 = img.Rotate();
  29. fold = img2.FindFold();
  30. if (fold > 0)
  31. {
  32. img.Print();
  33. Console.WriteLine($"Rotated (Col): {fold}");
  34. sum += fold;
  35. }
  36. else
  37. {
  38. Console.WriteLine("Nope");
  39. img.Print();
  40. break;
  41. }
  42. }
  43. }
  44. Console.WriteLine();
  45. Console.WriteLine($"Total: {sum}");
  46. return 0;