02. SoftUni Karaoke
Здравейте.Имам проблем с един "if" от тази задача. https://judge.softuni.bg/Contests/Practice/Index/445#1.
По конкретно ме интересува защо на първата проверка if (person == participant), когато person-a и participant-a са еднакви не ми влиза в if-a.
Решавам си проблема като променя малко кода, но все пак искам да разбера защо не се получава по този начин.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace _02.SoftUni_Karaoke
{
class Program
{
static void Main(string[] args)
{
var listedParticipants = Console.ReadLine().Split(new char[] { ',' },StringSplitOptions.RemoveEmptyEntries).ToList();
var listedSongs = Console.ReadLine().Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries).ToList();
var dictionary = new Dictionary<string, Dictionary<string, SortedSet<string>>>();
var commnad = Console.ReadLine();
while (commnad!="dawn")
{
var token = commnad.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
var participant = token[0];
var song = token[1];
var award = token[2];
foreach (var person in listedParticipants)
{
if (person == participant)
{
if (!dictionary.ContainsKey(participant))
{
dictionary.Add(participant, new Dictionary<string, SortedSet<string>>());
}
foreach (var item in listedSongs)
{
if (item == song)
{
dictionary[participant][song].Add(award);
}
}
}
}
commnad = Console.ReadLine();
}
foreach (var item in dictionary.OrderByDescending(a=>a.Value.Values.Count).ThenBy(p=>p.Key))
{
Console.WriteLine($"{item.Key}: {item.Value.Values.Count} awards");
foreach (var i in item.Value.Values)
{
Console.WriteLine($"--{i}");
}
}
}
}
}