Р или Л

  • 10
  • Недоступна
Друзья секретного центра JavaRush с планеты Ки-Тай столкнулись с одной нестандартной для нас проблемой: они плохо различают буквы «р» и «л». Мы решили им помочь следующей задачей. В созданном списке слов экспериментальный метод fix будет удалять из списка строк все слова, содержащие букву «р», а все слова, содержашие букву «л» — удваивать.
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (615)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Igor Kubrak8 уровень
вторник, 13:38
Данная задача достаточно простая, но для тех кто запутался советую использовать метод contains.contains И во вторых, что бы при удалении или добавлении не возникало ошибок или бесконечных циклов, удалить из условия fori i++, сделать проверку s.contains("р") && !s.contains("л") в if, тоже самое но с "л" в if else и в else i++. Долго не мог понять проблемы в if else, оказалось что i+=2, лайк если помог,а мне для ачивки
Serjio8 уровень, Москва
суббота, 20:32
У кого до последнего будут проблемы с "р", рекомендую проехаться циклом только уже по промежуточному листу.
james_bobs9 уровень, Москва
10 сентября, 12:56
Убедитесь, что метод fix возвращает нужный результат, то есть не null, а strings.
Olga Dorokhova10 уровень
8 сентября, 05:55
Решила просто, сильно не заморачиваясь через charAt(). В двойном цикле - первый по элементам листа, второй по самой строке. Но и с созданием дополнительного листа!
Никита9 уровень
1 сентября, 20:08
Безуспешно закопался в regex на несколько часов, и все равно в итоге решил добавлением нового ArrayList.
Александр8 уровень, Санкт-Петербург
1 сентября, 11:02
Очень долго возился с задачей из за того что нужно было вместо return null установить return strings. Также ввело в заблуждение выходные данные выведенные в обратном порядке. Однако при попытки вывода в обычном порядке задача проверку прошла)
Andrei Fedorov8 уровень, Алдан
28 августа, 12:59
contains
Cypriiz9 уровень
29 августа, 21:31
а так же i++ в цикле и i--
Андрей8 уровень, Красноярск
25 августа, 16:03
решил с помощью этого &&, написал значит в плагине и смотрю он маленько ругается на первый if, ну жмякнул на него посмотреть что будет, а он взял и изменил целый кусок кода на ||. изучал его час наверное, потом ушёл, пришёл снова изучал, но всё-таки понял как работает. Может интересно кому будет первая строчка после for. if (!strings.get(i).contains("р") || !strings.get(i).contains("л")) {.....} внутри if и else if. задача проверку прошла
Vsevolod9 уровень, Москва
23 августа, 00:22
Моя лоза удваивалась бесконечно, пока я не понял, что это так :D
AL9 уровень, Минск
22 августа, 10:13
Додумалась сама, но пришлось погуглить. 1) Содержит Р && содержит Л - continue; 2) Содержит Р && !содержит Л - remove i-- - при удалении сдвигаются ячейки и нужно вернутся на шаг назад; 3) Содержит Л && !содержит P - add( i+1, ссылка) i++ - через шаг, иначе бесконечный цикл.