Loading...
georgi.stef.georgiev avatar georgi.stef.georgiev 921 Точки

Коментари за задачите и тестовете на Judge Assignment 1

Здравейте колеги,

Judge Assignment 1 вече тече, ето линк (трябва да изберете Compete) https://judge.softuni.bg/Contests/502/Judge-Assignment-1-JA1-Syntax-and-Memory-Exercises

Създавам една централна тема за проблеми/грешки в задачите или тестовете. Обръщам внимание на проблеми/грешки - тази тема няма за цел да обсъжда верни решения, има за цел да е централно място, където ако някой има неясноти по условието или смята, че нещо е сгрешено - да може да го каже, или да дойде и да види други хора какво са казали (нямам против да си създавате отделни теми, където да питате колегите за подход към решение на задачите - стига да не ги питате за готови решения - но целта на тази конкретна тема е друга).

Причината да го правя, е че когато ми report-нете проблем през системата няма как да ви отговоря (не ви получавам мейла, а само какво сте написали).

Note: поствам като няколко отделни коментара въпросите на един колега, който е ползвал "Докладвай проблем" от системата, преди да направя тази тема.

Тагове:
0
C++ Programming 18/03/2017 12:58:10
georgi.stef.georgiev avatar georgi.stef.georgiev 921 Точки

Въпрос от "Докладвай проблем" в системата

Местоположение: Task 2 – Similar Words (JA1-Task-2-Similar-Words)
Описание на проблема: Restrictions The text T will be no longer than 500 symbols and no shorter than 1 symbol. The word W will be no longer than 30 symbols and no shorter than 1 symbol. При буфер 501 и 31 байта Test #5 (Incorrect answer) показва грешка. След като направих буферите по 1024 байта грешката изчезна.

 

0
georgi.stef.georgiev avatar georgi.stef.georgiev 921 Точки

Прегледах теста, дължината на първия ред с текста е под 500 символа. На втория ред думата е под 30 символа, но там има и едно число - процентът P - да не би това да ти създава проблеми?

0
georgi.stef.georgiev avatar georgi.stef.georgiev 921 Точки

Въпрос от "Докладвай проблем" в системата

Местоположение: Task 3 – Fill Matrix (JA1-Task-3-Fill-Matrix)
Описание на проблема: Когато алокирам матрицата динамично ей така ````````` char ** matrix = new char*[rows]; for (i = 0; i < rows; ++i) matrix[i] = new char[cols]; for (i = 0; i < rows; ++i) { getline(cin, line); for (size_t j = 0, k = 0; j < line.length(); ++j) { if (isalnum(line[j])) matrix[i][k++] = line[j]; } } ````````` Zero тестовете и тестове 1, 5 и 8 показват грешка. При мен работи нормално със g++.exe (GCC) 5.3.0. С g++ (tdm64-1) 5.1.0 обаче гърми. Със статична матрица всичко се оправи.

0
georgi.stef.georgiev avatar georgi.stef.georgiev 921 Точки

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

Работещото ти решение също минава, защото си заделил повече памет, което ти позволява да излизаш от "реалната" част на матрицата, без да излезеш от заделената част. Пробвай да заделиш същата по размери матрица с подхода ти, който ползваш за заделяне с new, и би трябвало да работи. Hint: Погледни си проверките във fill функцията - тези за > 0 са верни, ама тези за < rows (и < cols) верни ли са, същото нещо ли казват като тези за > 0?

0
georgi.stef.georgiev avatar georgi.stef.georgiev 921 Точки

Въпрос от "Докладвай проблем" в системата

Местоположение: Task 2 – Similar Words (JA1-Task-2-Similar-Words)
Описание на проблема: We will consider two words – W1 and W2 – “similar” if they have the same length, start with the same letter, and a minimum percentage – P – of their letters match... For example, if W1 = “kittens” and W2 = “kidding”, the matching letters would be k, i, and n. That gives us 3 matching letters out of 7 letters, which is about 42.8% of the letters. If P = 40, then we would say the words match. If P = 43, we would say the words don’t match. Ако P е минимум процент и при 40% думите са подобни, трябва да са подобни и при 43%.

0
georgi.stef.georgiev avatar georgi.stef.georgiev 921 Точки

Тук не съм сигурен, че те разбирам. Имаме минимум процент P, при който думите са подобни. Всеки две думи, които имат по-малко подобност от P, не са подобни (оттам и минимум) - същото като ако минимум точки за отличен резултат на курса е 80, ако имаш по-малко от 80 точки (примерно 79.9), значи нямаш отличен резултат. При 3 от 7 съвпадащи букви в думите, 3/7 = 0.428..., което е 42.8%, което е по-малко от 43, съответно при P=43 нямаме подобност на думите, според условието на тази задача

0
gydigydi avatar gydigydi 12 Точки

....

0
22/03/2017 10:25:49
Dimitar_Petkov_Petkov avatar Dimitar_Petkov_Petkov 169 Точки

Жоро, изсъхнах на тая 4 задача. Има ли как да ми провериш мазеляка и да ми дадеш съвет. Благодарности

0
georgi.stef.georgiev avatar georgi.stef.georgiev 921 Точки

Здравей,

Да, тъкмо ти пишех отговор там. След малко ще имаш съвет в твоя въпрос.

Поздрави,

Жоро

0
Anatoli_Marinov avatar Anatoli_Marinov 1 Точки

Здравей Георги,

при опит да вляза в Judge системата получавам:

An error occurred while processing your request.

The anti-forgery token could not be decrypted. If this application is hosted by a Web Farm or cluster, ensure that all machines are running the same version of ASP.NET Web Pages and that the <machineKey> configuration specifies explicit encryption and validation keys. AutoGenerate cannot be used in a cluster.

Поздрави

Анатоли

0
georgi.stef.georgiev avatar georgi.stef.georgiev 921 Точки

Здравей,

Това е доста странно, може би е някакъв бъг в Judge системата.

Бих пробвал да влеза с различни браузъри или да тествам дали ако мина през някое proxy ще стане - но като цяло нямам идея защо може да се случи това.

Може ли да те помоля да пишеш на екипа на СофтУни? Те поддържат Judge системата и е най-добре да комуникирате директно, за да може ако трябва да дебъгват нещо да могат да те питат директно как се е случило, какви са ти настройките и т.н.

Поздрави,

Жоро

0
gydigydi avatar gydigydi 12 Точки

task 1:

Input
Two Hex Code color values on the same line, separated by a single space. Any letters in the input will
be lowercase

Трябва ли да се въвеждат входните параметри от конзолата? Това ли пише в условието?

Ако трябва да се въвеждат трябва ли да има решетка? И за изхода решетка?

Ако се въвеждат от конзолата как ще се спази 0.1 с за програмата ?

Как се смята 5MB за големина на програмата? Това е размера на файла CPP ?

 

0
georgi.stef.georgiev avatar georgi.stef.georgiev 921 Точки

Входът и изходът на всички програми в Judge става през конзолата, да. Може би трябваше да го напиша изрично в условието. Системата автоматично въвежда входни данни и проверява изходни данни (това вече го пише), като очаква те да са на конзолата.

Ограничението за време се измерва от началото на изпълнение на програмата до края на изпълнението ѝ. Понеже входът се извършва от системата, това отнема доста кратко време (милисекунди за малки количества входни данни), което няма да повлияе значимо на измерените 0.1 секунди. Ограничението за време се отнася за изпълнението върху системата, не за когато го тествате вие на ръка на конзолата (ако искате все пак да измерите време, можете да тествате като през системната конзола изпълните компилираната програма с пренасочване на входа от файл, например task1.exe < input.txt, където input.txt е файл с входните данни)

Не съм сигурен какво имаш предвид под "решетка". Ако имаш предвид пренасочване на входни и изходни данни към файл - можеш да тестваш компилираната програма така, да, но кодът ти трябва да чете от стандартния вход и да печата на стандартния изход (тоест конзолата, например чрез cin и cout).

Ограничението за памет е за количеството оперативна (RAM) памет, която програмата ползва в даден момент, не за размера на source code-а, нито за размера на резултата от компилацията. Тоест 5МB е максималното, което можеш да имаш заделено за програмата в даден момент от изпълнението (представи си, че общата памет на системата е 5МB, това казва ограничението).

Поздрави,

Жоро

0
gydigydi avatar gydigydi 12 Точки

#  -това е решетка. Как му викате ?

 

Two Hex Code -разбирам FF0000 808000  а не #FF0000 #808000

0
21/03/2017 17:45:30
georgi.stef.georgiev avatar georgi.stef.georgiev 921 Точки

Знак за число, диез (макар че диез не е много точно), hashtag, hash, number symbol съм срещал, и решетка става.

Входните данни имат #. Условието дефинира Hex Code като нещо, което има # отпред. В примерните входни данни има 2 примера с точните входни данни за задачата, както и примери за точния изход, който се очаква при такъв вход.

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