Подскажите почему решение с "strings.size() - 1" не приняло, но когда заменил на 4 все прошло?
public class Solution {
public static void main(String[] args) throws Exception {
//напишите тут ваш код
ArrayList<String> strings = new ArrayList<>();
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
for (int i = 0; i < 5; i++) {
strings.add(reader.readLine());
}
String s;
for (int i = 0; i < 13; i++) {
s = strings.get(strings.size() - 1);
strings.remove(strings.size() - 1);
strings.add(0, s);
}
for (int i = 0; i < 5; i++) {
System.out.println(strings.get(i));
}
}
}
Alex
20 уровень
Не принимает решение
Решен
Комментарии (4)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
hidden #1847798
11 ноября 2018, 15:32
Всё дело в цикле. При "strings.size() - 1" ты 13 раз переставляешь последний элемент на первую позицию. При "strings.size() - 4" ты меняешь местами только 2-й и 1-й элементы. А теперь запусти дебаг с этими условиями и посмотри, что происходит.
0
Alex
11 ноября 2018, 15:39
Возможно я некоректно объяснил.
Суть в том что "strings.size() - 1" == 4 и задача должна приниматься и так и так, но проходит только с strings.get(4)
0
--------Master
11 ноября 2018, 15:46
Должно приниматься и в приведенном виде, хотя в шапке и не полный текст выложен
0
Alex
11 ноября 2018, 16:20
Тоже понимаю что должно, но не принимало пока strings.get(strings.size() - 1) не заменил на strings.get(4)
0