6 using System.Text.RegularExpressions;
12 public static void Main(string[] argv)
14 FileStream fs = new FileStream("K4Weather.txt", FileMode.Open, FileAccess.Read);
15 StreamReader r = new StreamReader(fs);
16 int min_spread = Int32.MaxValue;
20 string s = r.ReadLine();
21 Match fields = Regex.Match(s, "^ +([0-9]+) +([0-9]+)[^ ]* *([0-9]+).*");
23 int day = Convert.ToInt32(fields.Groups[1].ToString());
24 int min = Convert.ToInt32(fields.Groups[3].ToString());
25 int max = Convert.ToInt32(fields.Groups[2].ToString());
26 int spread = max - min;
27 if (spread <= min_spread)
35 Console.WriteLine(spread_day);
49 using System.Text.RegularExpressions;
55 public static void Main(string[] argv)
57 FileStream fs = new FileStream("K4Soccer.txt", FileMode.Open, FileAccess.Read);
58 StreamReader r = new StreamReader(fs);
59 int min_spread = Int32.MaxValue;
60 string spread_day = "";
63 string s = r.ReadLine();
64 Match fields = Regex.Match(s, "^ +[0-9]+\\. ([A-Za-z_]+) +[0-9]+ +[0-9]+ +[0-9]+ +[0-9]+ +([0-9]+) +- +([0-9]+).*");
66 string day = fields.Groups[1].ToString();
67 Console.Write("Testing");
68 Console.WriteLine(day);
69 int min = Convert.ToInt32(fields.Groups[2].ToString());
70 int max = Convert.ToInt32(fields.Groups[3].ToString());
71 int spread = Math.Abs( max - min );
72 if (spread <= min_spread)
80 Console.WriteLine(spread_day);
91 using System.Text.RegularExpressions;
97 public static void Main(string[] args)
99 Console.Write("part1: ");
100 DM("K4Weather.txt", "^ +([0-9]+) +([0-9]+)[^ ]* *([0-9]+).*");
101 Console.Write("part2: ");
102 DM("K4Soccer.txt", "^ +[0-9]+\\. ([A-Za-z_]+) +[0-9]+ +[0-9]+ +[0-9]+ +[0-9]+ +([0-9]+) +- +([0-9]+).*");
105 public static void DM(string file, string pattern)
107 FileStream fs = new FileStream(file, FileMode.Open, FileAccess.Read);
108 StreamReader r = new StreamReader(fs);
109 int min_spread = Int32.MaxValue;
110 string spread_day = "";
113 string s = r.ReadLine();
114 Match fields = Regex.Match(s, pattern);
116 string day = fields.Groups[1].ToString();
117 int min = Convert.ToInt32(fields.Groups[2].ToString());
118 int max = Convert.ToInt32(fields.Groups[3].ToString());
119 int spread = Math.Abs( max - min );
120 if (spread <= min_spread)
128 Console.WriteLine(spread_day);