Loading...
beinsaduno avatar beinsaduno 13 Точки

06.Equal Sum (Array Exercises) - Java Fundamentals

Здравейте,

Бихте ли ми помогнали да си открия грешката? В Judge получавам 90/100. От няколко часа се опитвам да реша задачата и вече се изчерпах от идеи как бих могьл да подобря кода си.

Решение на задачата:

https://pastebin.com/7hTpif57

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

https://softuni.bg/trainings/resources/officedocument/56543/exercise-problem-descriptions-java-fundamentals-january-2021/3212

  1. Equal Sums 

Write a program that determines if there exists an element in the array such that the sum of the elements on its left is equal to the sum of the elements on its right. If there are no elements to the left / right, their sum is considered to be 0. Print the index that satisfies the required condition or “no” if there is no such index. 

Examples 

Input 

Output 

Comments 

1 2 3 3 

At a[2] -> left sum = 3, right sum = 3 

a[0] + a[1] = a[3] 

1 2 

no 

At a[0] -> left sum = 0, right sum = 2 

At a[1] -> left sum = 1, right sum = 0 

No such index exists 

At a[0] -> left sum = 0, right sum = 0 

1 2 3 

no 

No such index exists 

10 5 5 99 3 4 2 5 1 1 4 

At a[3] -> left sum = 20, right sum = 20 

a[0] + a[1] + a[2] = a[4] + a[5] + a[6] + a[7] + a[8] + a[9] + a[10] 

 

Благодаря предварително за отделеното време!

Тагове:
0
Java Fundamentals
MartinBG avatar MartinBG 4803 Точки
Best Answer

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

Ето една модификация на решението, която минава успешно в Judge, а това е леко оптимизирана версия. Погледнете ги и питайте, ако има нещо неясно.

 

0
beinsaduno avatar beinsaduno 13 Точки

Мартин,

много благодаря за помощта, особено за оптимизираната версия! 
 

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