Javalhalla
시간 제한2초메모리 제한1024 MB
부분 리스트가 원본 리스트와 같은 저장 공간을 공유하므로, 한쪽을 수정하면 다른 쪽에도 반영되는 작은 언어를 해석한다.
문제
Немногие знают, что уже викинги имели дело с языками программирования. К сожалению, у них не было компьютеров, чтобы их запускать. Однако, некоторые их программы дошли до наших дней, и у нас наконец есть возможность их запустить. Вам необходимо исполнить одну из таких программ.
В этой задаче мы опишем один из таких языков, дошедший до наших дней под именем <<Javalhalla>>. В этом языке присутствуют два типа данных: целые числа и списки целых чисел. Все операции в этом языке производятся только со списками. Числа в списках нумеруются целыми числами, начиная с единицы. В этом языке присутствуют следующие операции:
List a = new List(x,y, ...,z). Создать новый список из чисел, перечисленных в скобках и присвоить ему имя .List b = a.subList(from,to). Взять все числа из списка , находяшиеся на позициях от до () и составить из них список . Все изменения списка отражаются в соответствующих позициях списка , и наоборот. Обратите внимание на тестовые примеры и комментарии к ним.a.set(i,x)Присвоить элементу списка значениеa.add(x)Добавить число в конец списка . Эта операция применима только в том случае, если список был создан так, как описано в первой операции (то есть список не был создан, как подсписок какого-либо другого списка).a.get(i)Вывести элемент списка в отдельной строке
입력
В первой строке находится целое число () --- количество строк в программе. Каждая из следующих строк описывает очередную команду в формате, описанном выше. Гарантируется, что никакой список не будет объявлен дважды, все обращения к спискам по индексу не выходят за границы списка. Все названия списков являются строками из строчных латинских букв длиной не более 10. Слова <<new>>, <<list>>, <<set>>, <<add>> и <<get>> являются зарезервироваными и не могут быть названием списка. Внутри скобок между аргументами и запятыми пробелов нет. Все числа во входном файле целые, положительные и не превосходят . Суммарная длина списков, созданных с помощью первой операции, не превосходит .
출력
Для каждый операции выведите элемент списка .
힌트
Обратите внимание, что в третьем тестовом примере четвертая операция изменила как список , так и cписок , а седьмая --- списки , и .