Софтуерно Инженерство
Loading...
+ Нов въпрос
Iskren.1990 avatar Iskren.1990 6 Точки

Ми и аз, като цяло гадно чувство.

 

 

0
Iskren.1990 avatar Iskren.1990 6 Точки

От горе долу разбраното ако имаш "Add" и файтъра съществува ти му добавяш Health и Energy, а не трябва. И аз се попрецаках така, прочети условието.
 

                    case "Add":

                        if (!all.ContainsKey(token[1]))

                        { all[token[1]] = new int[2] { 0,иnt.Parse(token[3]}; } (ад енерджи хеар)

                        all[token[1]][0] += int.Parse(token[2]);

                        all[token[1]][1] += int.Parse(token[3]);  (шуд бе делийтед)

0
JSuser avatar JSuser 222 Точки

Здравей,

Проблема мисля, че е в случай Add. По условие е казано:" Add the person, his/her health and energy to your records. If person with the given name already exists, just increase the health of the person with the current one that is given."

Значи след if-a на 22-ри ред трябва да имаш един else и в него да увеличаваш само health,  а energy-to се запазва както е било първоначално. В if-a на 22 ред вкарай само първоначалните стойности.

Аз съм на Java нямам IDE за да ти го коригирам и тествам. Ето все пак моето решение, което дава 100/100, мисля че ще ти помогне:

https://pastebin.com/QxT0BF7F

Успех!

0
30/03/2020 19:09:29
AnastasiyaG avatar AnastasiyaG 5 Точки

Здравейте, 

 

Да точно от там беше грешката - с този код дава 100/100:

 case "Add":
                        if (!all.ContainsKey(token[1]))
                        {
                            all[token[1]] = new int[2] { 0, 0 };
                            all[token[1]][0] += int.Parse(token[2]);
                            all[token[1]][1] += int.Parse(token[3]);
                        }

                        else
                        {
                            all[token[1]][0] += int.Parse(token[2]);
                        }

                        break;

Благодаря!

0