Loading...
EmoBG avatar EmoBG 2 Точки

Здравейте, искам да попитам относно задачата Автобус от вчерашния примерен изпит

Условие: https://softuni.bg/downloads/svn/programming-basics/2018-02/Exam/Problem%2004%20-%20Bus.pdf

Задачата я реших 100/100, но се мъчих много и не мисля, че решението ми е добро.

Ако някой знае по-добро решение моля да го даде.

Ето моя код:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Programming_basics
{
    class Program
    {
        static void Main(string[] args)
        {
            int people = int.Parse(Console.ReadLine());
            int stops = int.Parse(Console.ReadLine());
            int total = 0;
            int totalPeople = 0;
            int i = 0;

            for (i = 1; i <= stops; i++)
            {
                int getOutOfTheBus = int.Parse(Console.ReadLine());
                int getInTheBus = int.Parse(Console.ReadLine());
                if (i < 3)
                {
                    if (i % 2 != 0)
                    {
                        total += people - getOutOfTheBus + getInTheBus + 2;
                    }
                    else
                    {
                        total = total - getOutOfTheBus - 2 + getInTheBus;
                    }
                }

                else if (i == 3)
                {
                    if (i % 2 != 0)
                    {
                        totalPeople = total - getOutOfTheBus + getInTheBus + 2;
                    }
                    else
                    {
                        totalPeople = total - getOutOfTheBus - 2 + getInTheBus;
                    }
                }

                else if (i > 3)
                {
                    if (i % 2 != 0)
                    {
                        totalPeople = totalPeople - getOutOfTheBus + getInTheBus + 2;
                    }
                    else
                    {
                        totalPeople = totalPeople - getOutOfTheBus - 2 + getInTheBus;
                    }
                }
            }
            if (i < 4)
            {

                Console.WriteLine($"The final number of passengers is : {total}");
            }
            else
            {
                Console.WriteLine($"The final number of passengers is : {totalPeople}");
            }
        }
    }
}

Тагове:
0
Programming Basics with C#
EmoBG:
Проблемът е решен.
ElviraPetkovaSvishtov avatar ElviraPetkovaSvishtov 152 Точки
Best Answer

Здравей. Ето моето решение от вчера https://pastebin.com/XrQDXWDV. Преди време съм решавала задачата и съм я решила по-малко поразличен начин - https://pastebin.com/sP6cCSbQ. Мисля че, разликата идва от това, че при  решението от вчера, директно от бройката на хората вадя и прибавям слизащите и качващите се, а при решението ми преди време- както и при твоео сега - е създадена нова променлива  и за това броя пътници зависи от номера на спирката. Дано си ме разбрал(а). Решението е вярно, но става дълго, и се спестява като директно на старата променлива (за броя на пътниците) и присвояваш новата стойност.

0
EmoBG avatar EmoBG 2 Точки

Мерси. Решението ти  от вчера е много по-добро от моето.

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