Loading...
Yoana_Borisova avatar Yoana_Borisova 4 Точки

Judge Assiment 3 03.Message

Здравейте! Решавам Judge Assiment 3 но изпитвам затруднения с 03.Message от него. Ето кода, който написах. На пръв поглед тестовете, които аз пускам минават, но джудж дава само 10/100. Извинявам се за объркания код, надявам се да може да се чете!

https://pastebin.pl/view/3e9911aa

 

Тагове:
0
C++ Advanced
Smeshan avatar Smeshan 89 Точки

Привет,
на мен не ми отваря линка - можеш ли да го провериш ?

Поздрави,
Илиян

0
Yoana_Borisova avatar Yoana_Borisova 4 Точки

Мисля, че когато го пейстнеш в гугъл става

0
Yoana_Borisova avatar Yoana_Borisova 4 Точки

Mалко се поомотах с кода но успях да го поправя и да искарам 100/100

 

0
20/06/2021 18:14:04
Smeshan avatar Smeshan 89 Точки

Супер, аз тъкмо го гледах, забелязах, че принтираш точка с празно вместо само с точка накрая. Но пак беше 10/100.
Иначе aз я реших като първо прочитам директно в map думите с техния брой. След което от този мап напълних два вектора - words и wordsCount.  А командите за принт прочетох в pair<int, int>. И така накрая и аз пълня един set, но функцията ми изглежда така:

void findWordsInSequence(const std::vector<std::pair<int, int>>& commands,
                         const std::vector<std::string>& words,
                         const std::vector<int>& wordsCount) {
    for (const std::pair<int, int>& command : commands) {
        std::set<std::string> outputWords;
        for (size_t i = 0; i < wordsCount.size(); ++i) {
            if (command.first == wordsCount[i]) {
                outputWords.insert(words[i]);
            }
        }
        bool isWord = false;
        int outputPos = 0;
        for (const auto word : outputWords) {
            if (outputPos == command.second) {
                std::cout << word << std::endl;
                isWord = true;
                break;
            }
            outputPos++;
        }
        if (!isWord) {
            std::cout << '.' << std::endl;
        }
    }
}

 

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