Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Проверка расстановки ударений в словах.
|
|||
|---|---|---|---|
|
#18+
Здравствуйте уважаемые участники форума! Прохожу курс по программированию на С++ и столкнулся со следующей задачей. Заранее спасибо за внимание к моей проблеме. Ниже условие: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Входные данные Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Выходные данные Код: plaintext Примечание к примеру Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. Решая эту пришёл к тому, что в программе должен присутствовать перевод всех слов из словаря и из задания в один регистр для последующего определения совпадения слов из задания и из словаря. Т.е. проверить слово без учета ударения встречается в словаре или нет. Пытался колдовать с tolower() и toupper(). И вот что получилось. Привожу только кусок кода, но поскольку единого решения у меня нет, привожу то на чём застопорился. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. В общем я в тупике и не знаю как дальше решать. Помогите/подскажите пожалуйста как осуществить перевод всех слов в один регистр с возможностью дальнейшей работы с ними как со строками. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2017, 16:21 |
|
||
|
Проверка расстановки ударений в словах.
|
|||
|---|---|---|---|
|
#18+
Alero Решая эту пришёл к тому, что в программе должен присутствовать перевод всех слов из словаря и из задания в один регистр для последующего определения совпадения слов из задания и из словаря. Т.е. проверить слово без учета ударения встречается в словаре или нет. Не понимаю пока, в чём твоя проблема, но мысль неудачная уже ясно. Если ты приводишь слова в один регистр букв, то очевидно, что ты теряешь информацию о том, где проставлено ударение, и вся работа теряет смысл. Ты правильно понял, что ИСКАТЬ в словаре нужно без учёта регистра, это да, но САМО СЛОВО С УДАРЕНИЕМ там тоже должно присутствовать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2017, 17:41 |
|
||
|
Проверка расстановки ударений в словах.
|
|||
|---|---|---|---|
|
#18+
Хм.. Чтоб по set делать поиск надо хотя-бы ключи подбить к одному регистру. А ударение хранить как value. И наверное не set а multi-set. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2017, 12:24 |
|
||
|
Проверка расстановки ударений в словах.
|
|||
|---|---|---|---|
|
#18+
Сохраняем словарь в set: каждое слово в двух написаниях: с ударением и без. Проверка: читаем слово, считаем количество ударений если >1 - ошибка, ищем слово в словаре - нашли - правильно убираем ударение, ищем в словаре - нашли - ошибка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2017, 12:38 |
|
||
|
Проверка расстановки ударений в словах.
|
|||
|---|---|---|---|
|
#18+
Я имел в виду так. Вместо cAnnot cannOt Сделать multi-set key="cannot", value=2 (на второй букве ударение) key="cannot", value=5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2017, 14:20 |
|
||
|
Проверка расстановки ударений в словах.
|
|||
|---|---|---|---|
|
#18+
У меня проще: Код: plaintext 1. 2. 3. Для проверки достаточно поиска без доп. переборов. И value не надо. С value это уже не set, а map. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2017, 14:36 |
|
||
|
Проверка расстановки ударений в словах.
|
|||
|---|---|---|---|
|
#18+
Dima TДля проверки достаточно поиска без доп. переборов. И value не надо. С value это уже не set, а map. Дима. А так? key="cannot2" key="cannot5" Перевернул мульти-мап в сет. И свойства вроде сохранил. Искать по прежнему можно как в дереве. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2017, 14:44 |
|
||
|
Проверка расстановки ударений в словах.
|
|||
|---|---|---|---|
|
#18+
maytonДима. А так? key="cannot2" key="cannot5" Так лучше ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2017, 15:20 |
|
||
|
Проверка расстановки ударений в словах.
|
|||
|---|---|---|---|
|
#18+
maytonХм.. Чтоб по set делать поиск надо хотя-бы ключи подбить к одному регистру. А ударение хранить как value. В set есть параметр компаратор. Вовсе незачем менять регистр ключей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2017, 15:26 |
|
||
|
Проверка расстановки ударений в словах.
|
|||
|---|---|---|---|
|
#18+
Dima TmaytonДима. А так? key="cannot2" key="cannot5" Так лучше Или вообще так. Хардкор! Два ударения. key="cannot(2,5)" P.S. Жаль нет Базиста. Он-бы одобрил. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2017, 15:44 |
|
||
|
Проверка расстановки ударений в словах.
|
|||
|---|---|---|---|
|
#18+
maytonХм.. Чтоб по set делать поиск надо хотя-бы ключи подбить к одному регистру. А ударение хранить как value. И наверное не set а multi-set. Как бы я намекал, намекал... Не set, а map. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2017, 16:49 |
|
||
|
Проверка расстановки ударений в словах.
|
|||
|---|---|---|---|
|
#18+
Да зачем эти мэпы и прочие усложнения. Храним все в set, одно слово - один ключ, где заглавная буква это допустимое ударение. Если слово допускает несколько вариантов ударения, то храним их все в одном ключе, напр: cAnnOt При проверке ищем ключ без учета регистра, а затем проверяем ударение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2017, 17:18 |
|
||
|
Проверка расстановки ударений в словах.
|
|||
|---|---|---|---|
|
#18+
Anatoly MoskovskyДа зачем эти мэпы и прочие усложнения. Храним все в set, одно слово - один ключ, где заглавная буква это допустимое ударение. Если слово допускает несколько вариантов ударения, то храним их все в одном ключе, напр: cAnnOt При проверке ищем ключ без учета регистра, а затем проверяем ударение. А зачем? Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2017, 10:02 |
|
||
|
Проверка расстановки ударений в словах.
|
|||
|---|---|---|---|
|
#18+
И чтобы окончательно добить бедную учительницу, Вася качает Trie, делает Код: plaintext 1. И получает справочник куда можно положить все слова всех языков мира и компактно. Петя получает зачот. Вася качает свои скиллы в С++. А учительница получает множественные оргазмы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2017, 13:15 |
|
||
|
Проверка расстановки ударений в словах.
|
|||
|---|---|---|---|
|
#18+
MasterZivAnatoly MoskovskyДа зачем эти мэпы и прочие усложнения. Храним все в set, одно слово - один ключ, где заглавная буква это допустимое ударение. Если слово допускает несколько вариантов ударения, то храним их все в одном ключе, напр: cAnnOt При проверке ищем ключ без учета регистра, а затем проверяем ударение. А зачем? Код: plaintext Первый вариант по памяти выигрывает) Хотя в общем случае, если организовать второй вариант следующим образом: Код: plaintext 1. то мы снова проиграем по памяти, но выиграем при поиске maytonИ чтобы окончательно добить бедную учительницу, Вася качает Trie, делает Код: plaintext 1. И получает справочник куда можно положить все слова всех языков мира и компактно. Петя получает зачот. Вася качает свои скиллы в С++. А учительница получает множественные оргазмы. Василий попытается понять что это такое и семестр неожиданно закончится) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2017, 17:53 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=39509498&tid=2018094]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
1201ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
| others: | 273ms |
| total: | 1572ms |

| 0 / 0 |
