private void reviewSchedule(List <ScheduleItem> items) { int NumberOfDays = 0; int CurrentDayProcessed = 0; Dictionary <string, TeamData> teams = new Dictionary <string, TeamData>(); foreach (ScheduleItem item in items) { if (CurrentDayProcessed < item.GameDay) { CurrentDayProcessed = item.GameDay; NumberOfDays++; } if (!teams.ContainsKey(item.HomeTeam)) { teams[item.HomeTeam] = new TeamData(item.HomeTeam); } if (!teams.ContainsKey(item.AwayTeam)) { teams[item.AwayTeam] = new TeamData(item.AwayTeam); } teams[item.HomeTeam].addHomeGame(item.GameDay, item.AwayTeam, item.NightGame); teams[item.AwayTeam].addAwayGame(item.GameDay, item.HomeTeam, item.NightGame); } Console.Out.WriteLine("Total Days of Games = " + NumberOfDays); foreach (string team in teams.Keys) { TeamData data = teams[team]; Console.Out.WriteLine(" " + team + ": " + data.GameCount + "/ " + data.HomeGames() + "H-" + data.AwayGames() + "A days off=" + data.daysOff(NumberOfDays) + ", day games=" + data.DayGameCount ); Console.Out.WriteLine(data.buidlGameDayString()); foreach (string opponent in data.opponents.Keys) { GameInfo gi = data.opponents[opponent]; Console.Out.WriteLine(" vs " + opponent + "/ " + gi.getHomeGameCount() + "H-" + gi.getAwayGameCount() + "A" ); } } }