Loading...
levontehlerian avatar levontehlerian 1 Точки

Проблем със задачата за еднакви двойки

Здравейте,

Имам нужда от помощ за следната задача от упражненията за for цикъл. Задачата минава със всички примерни входове, но judge не е съгласен и един тест не минава. Аз ли някъде греша или judge? Ето и задачата:

4.Еднакви двойки

Дадени са 2*n-на брой числа. Първото и второто формират двойка, третото и четвъртото също и т.н. Всяка двойка има стойност – сумата от съставящите я числа. Напишете програма, която проверява дали всички двойки имат еднаква стойност или печата максималната разлика между две последователни двойки. Ако всички двойки имат еднаква стойност, отпечатайте "Yes, value = {Value}" + стойността. В противен случай отпечатайте "No, maxdiff = {Difference}" + максималната разлика.

 

Ето решението ми:

using System;

namespace EdnakviDvoiki
{
    class EdnakviDvoiki
    {
        static void Main(string[] args)
        {
            int minSum = int.MaxValue;
            int maxSum = int.MinValue;
            int pairs = int.Parse(Console.ReadLine());
            for (int i = 0; i < pairs; i++)
            {
                int currentNumber1 = int.Parse(Console.ReadLine());
                int currentNumber2 = int.Parse(Console.ReadLine());
                int currentSum = currentNumber1 + currentNumber2;
                if (currentSum > maxSum)
                {
                    maxSum = currentSum;
                }
                if (currentSum < minSum)
                {
                    minSum = currentSum;
                }
            }
            if (minSum == maxSum)
            {
                Console.WriteLine($"Yes, value={minSum}");
            }
            if (minSum != maxSum && pairs != 0)
            {
                Console.WriteLine($"No, maxdiff={maxSum - minSum}");
            }
        }
    }
}

Ето и съответният инпут, който не минава:

7
34
-33
52
12
-32
32
23
41
7
25
34
23
124
21

Очакван изход:

No, maxdiff=88

Моят изход:

No, maxdiff=145

Тагове:
0
Programming Basics with C#
chichovoto avatar chichovoto 31 Точки
Best Answer

Здравей!

Твоята програма разпечатва разликата между сумата на кои да е 2 двойки числа. А се иска да се разпечата разликата между две последователни двойки. 

примерно решение:https://pastebin.com/BVwMe5dX

0
levontehlerian avatar levontehlerian 1 Точки

Да, грешката е моя. Чак сега обърнах внимание, че се иска максималната разлика между 2 последователни двойки, а не максималната разлика между всички последователни двойки.

Благодаря.

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