Loading...
lazarovg avatar lazarovg 3 Точки

Equal Sums Even Odd Position, Equal Sums Left Right Position и Sum Prime Non Prime

Здравейте, някой може ли да помогне със задачките в заклавието. 

Equal Sums Even Odd Position ( https://judge.softuni.bg/Contests/Compete/Index/1165#4 )- на тази задачка, получавам 0/100 time limit на всички тестове в judge, но резултатите са правилни, това е моето решение - https://pastebin.com/6Y17gGUW

Equal Sums Left Right Position ( https://judge.softuni.bg/Contests/Compete/Index/1165#5 )-  тук получавам от judge 40/100, с примерите които са във файла, резултатите са ОК, моето решение - https://pastebin.com/g08yTFaW

Sum Prime Non Prime - https://judge.softuni.bg/Contests/Compete/Index/1165#6 - решението ми остана на другия лаптоп, срам ме е да питам :( , но ако може някой да даде примерно решение като се прибера лсед работа да погледна къде точно греша.

 

Благодаря на всички предварително за съдействието .

 

 

0
Programming Basics 23/11/2018 10:29:15
pdemirev avatar pdemirev 12 Точки
Best Answer

Hi,

За Equal Sums Even Odd Position не видях, къде се объркват нещата при твоето решение. Единият от тестовете при теб дава друг изход:

Вход    
299900
300000    
Изход
299970 299981 299992

Давам ти моето решение:

https://pastebin.com/RpC9tB2J

В момента разглеждам и останалите 2 задачи, ако имам решения, ще ти ги paste тук.

0
pdemirev avatar pdemirev 12 Точки

Hi again,

Ето решение и на 06. Equal Sums Left Right Position. Аналогична на предната е, просто с допълнителни if проверки.

https://pastebin.com/9X6xMGpX

0
lazarovg avatar lazarovg 3 Точки

Благодаря ти, за Equal Sums Even Odd Position видях ,че като сложа  for j in range(0, length+1): да почва от 0 дава time limit, но ако сложа smaller минава много бързо ама  не почва от 100001, а от 100000 колкото е въведеното число.

Имаш ли примерно решение за Sum prime and non prime?

0
pdemirev avatar pdemirev 12 Точки

За Sum Prime Non Prime, получавам 70/100, но не мога да си намеря грешката. Всички примерни входове от задачата минават успешно.

 

0
lazarovg avatar lazarovg 3 Точки

Ако искаш шерни кода, да видим какво можем да направим..., може някой и някой друг да помогне 

0
Bars1967 avatar Bars1967 9 Точки

Ахам.

Но след 60/10 и  некоректен отговор при тест 3, 6, 7 и 8.

В момента не мога да търся грешката, защото кучето обикаля и си чака разходката...

Нямам профил в пастебина

num = None
s_pr = 0
s_npr = 0
neg = ''
while not num == "stop":
    num = input()
    if num == "stop":
        break
    else:
        num = int(num)

        if num < 0:
            neg = 'neg'

        if num > 1:

            for i in range(2, num):
                if (num % i) == 0:
                    s_npr += num
                    break
            else:
                s_pr += num

if neg == "neg":
    print(f'Number is negative.')
    print(f"Sum of all prime numbers is: {s_pr}")
    print(f'Sum of all non prime numbers is: {s_npr}')
else:
    print(f"Sum of all prime numbers is: {s_pr}")
    print(f'Sum of all non prime numbers is: {s_npr}')
0
pdemirev avatar pdemirev 12 Точки

https://pastebin.com/1eC2i951

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

0
Bars1967 avatar Bars1967 9 Точки

Това вече е решено, сори

Sum prime and non prime

... било лесна задачка? :)

 

 

0
23/11/2018 21:25:58
lazarovg avatar lazarovg 3 Точки

Bars1967  какво искаш да кажеш, не задачка не е лесна :)

0
pdemirev avatar pdemirev 12 Точки

Hi,

Някой успя ли да я направи на 100/100 ?

0
elenakarabeteva avatar elenakarabeteva 4 Точки

Здравейте,

става въпрос за задачата sum prime non prime, нали?

ето едно примерно решение от мен. 100/100 в judge:

 

            double sum1 = 0;
            double sum2 = 0;
            while (true)
            {
                string command = Console.ReadLine();
                if (command == "stop")
                {
                    break;
                }
                int number = int.Parse(command);
                int counter = 0;

                for (int i = 2; i <= number / 2; i++)
                
                {
                    if (number % i == 0)
                    {
                        counter++ ; 
                        break;
                    }
                }
                if (number < 0)
                {
                    Console.WriteLine("Number is negative.");
                }
                else if (counter > 0 || number == 1)
                {
                    sum2 += number;
                }
                else
                {
                    sum1 += number;
                }

            }
            Console.WriteLine($"Sum of all prime numbers is: {sum1}");
            Console.WriteLine($"Sum of all non prime numbers is: {sum2}");

0
lazarovg avatar lazarovg 3 Точки

Това е моето решение - https://pastebin.com/giY0GA8n, всички примери минават, но judge дава timeout limit, трявба да го вдигнат :)

0
Bars1967 avatar Bars1967 9 Точки

Кодът е на C#?

 

0
Bars1967 avatar Bars1967 9 Точки

Ами не, лесна е.

Те затова има награда от 3000 долара, за този, който открие следващото просто число... :)))

Ако някой е успял да достигне 100/100 за "простите числа", на PYTHON - нека се похвали как го е постигнал.

0
26/11/2018 10:53:00
lazarovg avatar lazarovg 3 Точки

https://pastebin.com/bBvssvXQ - РЕШИХ Я! 100 /100 на Python :) 

Просто нямам много време и няма кога да седна да решавам задачките, но за 1 час успях да оправя предишното решение.

0
26/11/2018 12:27:26
lazarovg avatar lazarovg 3 Точки

Еми успях момче :)  https://pastebin.com/bBvssvXQ

Кой ще ми даде сега 3000 долара

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