Проблем при една изпитна задача от tech-a with C#-Karioke
Условието на задачата може да се види от линка:
https://softuni.bg/trainings/resources/officedocument/33282/exercise-problem-descriptions-group-1-programming-fundamentals-may-2018/1939
Написах нещо по въпроса,но кода ми се чупи.
Ще се радвам ако някой ми посочи грешката или сподели негово по-добро решение.
Ето мовт код:
pastebin.com/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Karioke
{
class Program
{
static void Main(string[] args)
{
string [] parcipients = Console.ReadLine()
.Split(new char[] { ' ', ',' },StringSplitOptions.RemoveEmptyEntries)
.ToArray();
string [] songs = Console.ReadLine()
.Split(' ', ',')
.ToArray();
Dictionary<string,int>countofwords = new Dictionary<string,int>();
Dictionary<string,List<string>>listofwords= new Dictionary<string, List<string>>();
while (true)
{
string line3 = Console.ReadLine();
if (!(line3 == "dawn"))
{
string[] date = line3.Split(' ', ',').ToArray();
if (songs.Contains(date[1]))
{
if (!(countofwords.ContainsKey(date[0])))
{
countofwords.Add(date[0], 1);
listofwords.Add(date[0], new List<string>());
listofwords[date[0]].Add(date[2]);
}
else
{
if (!(listofwords.ContainsKey(date[0])))
{
listofwords[date[0]].Add(date[2]);
countofwords[date[0]] += 1;
}
else
{
if (listofwords[date[0]].Contains(date[2]))
{
}
else
{
listofwords[date[0]].Add(date[2]);
countofwords[date[0]] += 1;
}
}
}
}
}
else
{
foreach (var name in countofwords.OrderByDescending(x=>x.Value))
{
Console.WriteLine($"{name.Key}: {name.Value} awards");
foreach (var nameofsings in listofwords[name.Key].OrderBy(x=>x));
{
Console.WriteLine(nameofsings);
}
}
}
}
}
}
}
https://pastebin.com/arVVviyT
Едно решение и от мен.