Loading...

Във форума е въведено ограничение, което позволява на потребителите единствено да разглеждат публикуваните въпроси.

danail2003 avatar danail2003 27 Точки

House Party

Здравейте, дава ми 87/100, ако може помощ.

 

1.House Party

Write a program that keeps track of guests, that are going to a house party. On the first line of input, you are going to receive the number of commands you are going to receive. On the next lines you are going to receive one of the following messages:

  • "{name} is going!"
  • "{name} is not going!"

If you receive the first message, you have to add the person if he/she is not in the list and if he/she is in the list print on the console: "{name} is already in the list!". If you receive the second message, you have to remove the person if he/she is in the list and if not print: "{name} is not in the list!". At the end print all the guests.

Examples

Input

Output

4

Allie is going!

George is going!

John is not going!

George is not going!

John is not in the list!

Allie

5

Tom is going!

Annie is going!

Tom is going!

Garry is going!

Jerry is going!

Tom is already in the list!

Tom

Annie

Garry

Jerry

 

 

using System;
using System.Collections.Generic;

namespace House_Party
{
    class Program
    {
        static void Main(string[] args)
        {
            int guests = int.Parse(Console.ReadLine());
            List<string> goingOnParty = new List<string>();

            for (int i = 0; i < guests; i++)
            {
                string command = Console.ReadLine();
                string[] token = command.Split();
                int goingCounter = 0;

                for (int j = 0; j < goingOnParty.Count; j++)
                {
                    if (token[2]=="going!" && token[0] == goingOnParty[j])
                    {
                        Console.WriteLine($"{token[0]} is already in the list!");
                        goingCounter++;
                        break;
                    }
                }

                if (goingCounter==0 && token[2] == "going!")
                {
                    goingOnParty.Add(token[0]);                                     
                }
                else if (token[2] == "not")
                {
                    int removeCounter = 0;

                    for (int j = 0; j < goingOnParty.Count; j++)
                    {
                        for (int k = 0; k < goingOnParty.Count; k++)
                        {
                            if (token[0] == goingOnParty[k])
                            {
                                goingOnParty.Remove(token[0]);
                                removeCounter++;
                                break;
                            }
                        }

                        if (removeCounter == 1)
                        {
                            break;
                        }

                        if (goingOnParty[j] != token[0])
                        {
                            Console.WriteLine($"{token[0]} is not in the list!");
                            break;
                        }
                    }
                }
            }

            for (int i = 0; i < goingOnParty.Count; i++)
            {
                Console.WriteLine(string.Join(" ", goingOnParty[i]));
            }          
        }
    }
}

0
Programming Fundamentals
krum_43 avatar krum_43 750 Точки

Здравей,

Защо са ти тези броячи?

В C# има метод, с който можеш директно да провериш дали човека го има в колекцията goingOnParty и тя е :

If(goingOfParty.Contains(name)

{

.....................................................

}

Добре е да си отделиш името на госта в отделна променлива:

string name=token[0];

Eто ти един примерен код:

https://pastebin.com/dX8X1wnM

 

0
danail2003 avatar danail2003 27 Точки

Благодаря ти, много!

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.