Софтуерно Инженерство
Loading...
xpainkillerx avatar xpainkillerx 14 Точки

Задача  Warrior's Quest от Final Exam Retake 13.Dec.2019.

Здравейте,

имам въпрос отностно една от задачите от последния ритейк на Final Exam за Fundamentals. Задачата е Warrior's Quest от 13.Dec2019.

https://pastebin.com/ViNibE10 - това е кодът, който дава 100/100;

https://pastebin.com/VAvTjkM3 - а това е кодът който дава 90/100;

Разликата е в следното парче код:

при 100/100:

 case "Dispel":
                        index = int.Parse(actions[1]);
                        letter = char.Parse(actions[2]);
                        if (index > -1 && index < skill.Length)
                        {

                            skill = skill.Remove(index, 1);
                            skill = skill.Insert(index, letter.ToString());
                            Console.WriteLine("Success!");

                            break;
                        }

при 90/100 :

case "Dispel":
                        var index = int.Parse(actions[1]);
                        var letter = actions[2];
                        if (index > -1 && index < skill.Length)
                        {
                            skill = skill.Remove(index, 1);
                            skill = skill.Insert(index, letter);
                            Console.WriteLine("Success!");
                            break;
                        }

И в двата случая Replace е успешен, но Judge  се мръщи на втория.

И каква точно е разликата между двете парчета код?

Това е линка към задачата : https://judge.softuni.bg/Contests/Practice/Index/1962#0

Благодаря :)

Тагове:
0
Fundamentals Module 22/03/2020 11:11:48
viktorv19 avatar viktorv19 15 Точки

Не съм сигурен дали отговорът ми е правилен. Според мен понеже си използвал string като променлива да ти пази skill, Insert method , може да поема само string. А в долния пример му подаваш char. И може някъде да не минава.

https://docs.microsoft.com/en-us/dotnet/api/system.string.insert?view=netframework-4.8 това е за Insert при string

https://docs.microsoft.com/en-us/dotnet/api/system.text.stringbuilder.insert?view=netframework-4.8 това е за Insert при stringbuilder

0
xpainkillerx avatar xpainkillerx 14 Точки

Здравей,

и в двата случая в метода подавам string, само че първия път подавам чист стринг, а във втория каствам char към стринг, за да може да го приеме методът Insert. Общо взето и в двата случая правя едно и също, резултатът ми е един и същ. Въпросът е защо Judge приеме единият резултат, а другият не. И в какво толкова се различава подаването в метода на чист string от подаването на cast char...

0