Loading...
marin2112 avatar marin2112 38 Точки

06. Juice Diet - Programming Basics Online Exam - 7 January 2018.

Колеги , Проблем!!! Нулевите тестове на задачата са ми ОК, но натам ... 50 / 100

Задачата е : https://judge.softuni.bg/Contests/Practice/Index/911#11

Грешното ми решение е: https://pastebin.com/ewF9mBC2

Благодаря за отделеното време и внимание! 
Успех на всички за изпита .. 

Тагове:
0
Programming Basics with Java
Quake3 avatar Quake3 546 Точки
Best Answer

Здравей,

Виж условието: Ако има повече от една възможност, Бай Ганьо винаги ще предпочете тази, където той може да изпие най-много от по-сочния плод


От обясненията си мисля, че това са черешите (не съм сигурен, може би са степенувани по сочност) Допива ми се сокче:)

Възможности:

2 Raspberries, 4 Strawberries, 2 Cherries. Juice: 69 ml.

2 Raspberries, 2 Strawberries, 3 Cherries. Juice: 69 ml.

2 Raspberries, 0 Strawberries, 4 Cherries. Juice: 69 ml.

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

0
marin2112 avatar marin2112 38 Точки

Колега не ми помагаш много по този начин. Прочетох условието десетки пъти преди да пиша тук! Предполагам не разпоалгаш с 25 часа в денонощието , аз също :) 

Разрових се във форумa и намерих една разлика с моя код и тя е, че вместо да използва %.0f за placeholder , колегата е използвал DecimalFormat ... 
Би ли ми обяснил по какъв начин тази промяна влияе на условието да се избере най-сочния плод ?

Качвам решението което дава 100-100 : https://pastebin.com/mJQtq8Ym

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

0
20/07/2018 22:23:41
Quake3 avatar Quake3 546 Точки

Не помага. Просто го пише в условието и реших, че това е проблема.

1
21/07/2018 04:50:35
Quake3 avatar Quake3 546 Точки

Условието не подсказва директно за формата на изхода за сока, но като се замисля:

1. Милилитрите ще са *.0 или *.5

2. В примерите са описани такива, които завършват на *.0 и се принтират като цяло число.

Тоест ако имаме 10.0 трябва да принтираме 10, а при 10.5 принтираме 10.5. Тук има логика, макар и бавничко да я загрях. Би трябвало %.1f да работи.

Всъщност условието за по-сочния плод е съвсем валидно и мисля, че е голям късмет да има решение 100 от 100, което не го спазва. Пробвай да смениш последователността на циклите например:
 

for (int k = 0; k <= c; k++) {
            for (int i = 0; i <= r; i++) {
                for (int j = 0; j <= s; j++) {

Ако се спазва условието за сочност, няма да има значение кой цикъл е 1-ви, 2-ри и т.н.

Сигурно може много да се оптимизира, но решение с 3 цикъла трябва да изглежда нещо подобно - код.

Поздрави

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