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

01. Wourld Tour - 66/100

Здравейте,

Имам проблем със задача Wourld Tour от финалния изпит. Моля за малко съдействие.

https://pastebin.com/ikUg3XgU

Problem 1 - World Tour
Problem for exam preparation for the Programming Fundamentals Course @SoftUni.
Submit your solutions in the SoftUni judge system at https://judge.softuni.org/Contests/Practice/Index/2518#0.

You are a world traveler, and your next goal is to make a world tour. To do that, you have to plan out everything first. To start with, you would like to plan out all of your stops where you will have a break.
On the first line, you will be given a string containing all of your stops. Until you receive the command "Travel", you will be given some commands to manipulate that initial string. The commands can be:
•    "Add Stop:{index}:{string}":
o    Insert the given string at that index only if the index is valid
•    "Remove Stop:{start_index}:{end_index}":
o    Remove the elements of the string from the starting index to the end index (inclusive) if both indices are valid
•    "Switch:{old_string}:{new_string}":
o    If the old string is in the initial string, replace it with the new one (all occurrences)
Note: After each command, print the current state of the string
After the "Travel" command, print the following: "Ready for world tour! Planned stops: {string}"
Input / Constraints
•    JavaScript: you will receive a list of strings
•    An index is valid if it is between the first and the last element index (inclusive) in the sequence.
Output
•    Print the proper output messages in the proper cases as described in the problem description
Examples
Input    Output
Hawai::Cyprys-Greece
Add Stop:7:Rome
Remove Stop:11:16
Switch:Hawai:Bulgaria
Travel    Hawai::RomeCyprys-Greece
Hawai::Rome-Greece
Bulgaria::Rome-Greece
Ready for world tour! Planned stops: Bulgaria::Rome-Greece
JS Examples
Input    Output
(["Hawai::Cyprys-Greece",
"Add Stop:7:Rome",
"Remove Stop:11:16",
"Switch:Hawai:Bulgaria",
"Travel"])    Hawai::RomeCyprys-Greece
Hawai::Rome-Greece
Bulgaria::Rome-Greece
Ready for world tour! Planned stops: Bulgaria::Rome-Greece

Тагове:
0
C# Fundamentals
svephoto avatar svephoto 1191 Точки

Здравей, vobreshkov,

 

Твоят код получава 33/100 в Judge, а не 66/100, както си посочил в заглавието на поста.

Проверките за това дали даден/и индекс/и са валидни ги сложи вътре в проверките за "Add Stop"  и "Remove Stop", а не като част от тези проверки. Освен това трябва да проверяваш за input.Length > int.Parse(cmd[1]) - без знак "=" (знаеш защо), а също и за другия вариант: int.Parse(cmd[1]) >= 0. При "Switch" също вкарай input.Contains(cmd[1]) във вътрешна проверка, понеже трябва да отпечаташ резултата независимо дали е извършена промяна, или не, а при твоя вариант печаташ само при извършена промяна. При "Remove Stop" в израза

newRoute = input.Remove(int.Parse(cmd[1]), (int.Parse(cmd[2])) - (int.Parse(cmd[1])+1));

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

Това са необходимите промени, виж как можеш да ги направиш и ако имаш още трудности - пиши отново.

0
vobreshkov avatar vobreshkov 3 Точки

Здравейте,

ПОправих грешките, върху които ми обърнахте внимание, но все още  Judge ми дава 66/100 точки

Изпращам поправения код:

https://pastebin.com/8EXL6PQa

Поздрави и весели празници !

0
svephoto avatar svephoto 1191 Точки

Здравей, vobreshkov,

 

Трябва да изкараш печатането извън вътрешните проверки, защото по условие трябва да печатаме независимо дали е извършена промяна, или не, т. е. независимо дали сме влезли във вътрешна проверка, или не. А "continue" не е необходимо. Ето решението ти за 100/100 с направени необходимите корекции: https://pastebin.com/RnaHwUFa.

 

И благодаря yes, весели празници и на теб, и успех занапред! laugh

0
vobreshkov avatar vobreshkov 3 Точки

Здравей Svephoto,

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

Пожелавам още веднъж весели празници и здрава нова 2022 година на всички!.

Поздрави,

Валентин

0
krum_43 avatar krum_43 756 Точки

Ето ти един код 100/100.

https://pastebin.com/QhiWM1Hx

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