Loading...

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

ktodorov avatar ktodorov 42 Точки

Console Input/Output - Task 14 - Sum of Elements

Здравейте,

Имам въпрос по 14-та задача от домашното за Console Input/Output - както и да напиша кода, тест 11 и тест 12 не ми се получават и имам 83/100 точки. Проверих и авторското решение, с изключение на лууп-а, всичко ми е почти еднакво. Ето моя код:

using System;

    class SumOfElements
    {
        static void Main()
        {
            string NumberLine = Console.ReadLine();
            string[] Numbers = NumberLine.Split(' ');
            int BiggestNumber = 0;
            int Sum = 0;
            foreach (string value in Numbers)
            {
                int SpecialNumber = int.Parse(value);
                if (SpecialNumber > BiggestNumber)
                {
                    BiggestNumber = SpecialNumber;
                }
                Sum = Sum + SpecialNumber;
            }
            if (Sum == 2*BiggestNumber)
            {
                Console.WriteLine("Yes, sum={0}",BiggestNumber);
            }
            else
            {
                Console.WriteLine("No, diff={0}",Math.Abs(Sum - 2*BiggestNumber));
            }
        }
    }

Условието на задачата е:

Sum of Elements
This problem is from Variant 3 of C# Basics exam from 11-04-2014 Morning.  You can test your solution here .
You are given n numbers. Find an element that is equal to the sum of all of the other elements.


Input
Input data should be read from the console.
•    At the only line in the input a sequence of integers stays (numbers separated one from another by a space).
The input data will always be valid and in the format described. There is no need to check it explicitly.


Output
The output data must be printed on the console. At the only line of the output print the result.
•    Print "Yes, sum=…" if there is an element that is equal to the sum of all other elements, along with this sum.
•    Print "No, diff=…" if there is no element that is equal to the sum of all other elements. Print also the minimum possible difference between an element from the sequence and the sum of all other elements (always a positive number).
Constraints
•    All input numbers are integers in the range [0 … 2 000 000 000].
•    The count n of the input integers is in the range [2 ... 1 000].
•    Allowed working time for your program: 0.1 seconds.
•    Allowed memory: 16 MB.

 

Тагове:
0
Programming Basics 16/07/2015 01:19:37
ktodorov avatar ktodorov 42 Точки

Открих си грешката, всичко трябва да е long, защото при сметките може да се получат по-големи числа от int.

0
Lamms avatar Lamms 197 Точки

Забелязала съм, че често последните тестове са относно типовете данни и проверяват при по-големи числа дали работи кодът. Промени int-a на long.

 

Впрочем има качени тестовете и можеш да си провериш на какъв инпут точно ти гърми.

 

П.п. Когато почвах да пиша и да ти тествам кода, не беше пуснал още коментар. 

1
16/07/2015 01:52:58
ktodorov avatar ktodorov 42 Точки

Благодаря все пак smiley

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