/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
class Node{
private int num;
private Node next;
Node(int num, Node next) {
this.num=num;
this.next=next;
}
public Node getNext(){
return this.next;
}
public void setNext(Node next)
{
this.next=next;
}
public int getNum(){
return this.num;
}
public Node reverseSubList(Node head,int p,int q) {
Node node=head;
Node pNodePrev=null,qNodeNext=null;
p--;
q--;
while(node!=null && p>0 ){
pNodePrev=node;
node=node.getNext();
p--;
q--;
}
if(node==null)
return head;
Node curr=node,prev=null,next=null;
while(curr!=null && q>=0)
{
next=curr.getNext();
curr.setNext(prev);
prev=curr;
curr=next;
q--;
}
if(pNodePrev!=null)
pNodePrev.setNext(prev);
else
head=prev;
prev=null;
while(curr!=null) {
next=curr.getNext();
curr.setNext(prev);
prev=curr;
curr=next;
}
node.setNext(prev);
head=reverseLinkedList(head);
return head;
}
public Node reverseLinkedList(Node head) {
Node curr=head,prev=null,next=null;
while(curr!=null)
{
next=curr.getNext();
curr.setNext(prev);
prev=curr;
curr=next;
}
return prev;
}
public void printLL(Node node) {
while(node != null){
System.
out.
print(node.
getNum()+" "); node = node.getNext();
}
}
}
class Ideone
{
{
Scanner sc
= new Scanner
(System.
in); int n=sc.nextInt();
int p=sc.nextInt();
int q=sc.nextInt();
Node head = null;
Node node = null;
for(int i=0;i<n;i++)
{
int a=sc.nextInt();
if(head==null){
node = new Node( a,null);
head=node;
}
else{
node.setNext(new Node(a,null));
node = node.getNext();
}
}
head=head.reverseSubList(head,p,q);
head.printLL(head);
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgpjbGFzcyBOb2RlewoJcHJpdmF0ZSBpbnQgbnVtOwoJcHJpdmF0ZSBOb2RlIG5leHQ7CglOb2RlKGludCBudW0sIE5vZGUgbmV4dCkgewoJCXRoaXMubnVtPW51bTsKCQl0aGlzLm5leHQ9bmV4dDsKCX0KCXB1YmxpYyBOb2RlIGdldE5leHQoKXsKCQlyZXR1cm4gdGhpcy5uZXh0OwoJfQoJcHVibGljIHZvaWQgc2V0TmV4dChOb2RlIG5leHQpCgl7CgkJdGhpcy5uZXh0PW5leHQ7Cgl9CglwdWJsaWMgaW50IGdldE51bSgpewoJCXJldHVybiB0aGlzLm51bTsKCX0KCQoJcHVibGljIE5vZGUgcmV2ZXJzZVN1Ykxpc3QoTm9kZSBoZWFkLGludCBwLGludCBxKSB7CgkJTm9kZSBub2RlPWhlYWQ7CgkJTm9kZSBwTm9kZVByZXY9bnVsbCxxTm9kZU5leHQ9bnVsbDsKCQlwLS07CgkJcS0tOwoJCXdoaWxlKG5vZGUhPW51bGwgJiYgcD4wICl7CgkJCXBOb2RlUHJldj1ub2RlOwoJCQlub2RlPW5vZGUuZ2V0TmV4dCgpOwoJCQlwLS07CgkJCXEtLTsKCQl9CgkJaWYobm9kZT09bnVsbCkKCQlyZXR1cm4gaGVhZDsKCQkKCQlOb2RlIGN1cnI9bm9kZSxwcmV2PW51bGwsbmV4dD1udWxsOwoJCQoJCXdoaWxlKGN1cnIhPW51bGwgJiYgcT49MCkKCQl7CgkJCW5leHQ9Y3Vyci5nZXROZXh0KCk7CgkJCWN1cnIuc2V0TmV4dChwcmV2KTsKCQkJcHJldj1jdXJyOwoJCQljdXJyPW5leHQ7CgkJCXEtLTsKCQl9CgkJaWYocE5vZGVQcmV2IT1udWxsKQoJCXBOb2RlUHJldi5zZXROZXh0KHByZXYpOwoJCWVsc2UKCQloZWFkPXByZXY7CgkJcHJldj1udWxsOwoJCXdoaWxlKGN1cnIhPW51bGwpIHsKCQkJbmV4dD1jdXJyLmdldE5leHQoKTsKCQkJY3Vyci5zZXROZXh0KHByZXYpOwoJCQlwcmV2PWN1cnI7CgkJCWN1cnI9bmV4dDsKCQl9CgkJbm9kZS5zZXROZXh0KHByZXYpOwoJCWhlYWQ9cmV2ZXJzZUxpbmtlZExpc3QoaGVhZCk7CgkJcmV0dXJuIGhlYWQ7Cgl9CglwdWJsaWMgTm9kZSByZXZlcnNlTGlua2VkTGlzdChOb2RlIGhlYWQpIHsKCQkKCQlOb2RlIGN1cnI9aGVhZCxwcmV2PW51bGwsbmV4dD1udWxsOwoJCQoJCXdoaWxlKGN1cnIhPW51bGwpCgkJewoJCQluZXh0PWN1cnIuZ2V0TmV4dCgpOwoJCQljdXJyLnNldE5leHQocHJldik7CgkJCXByZXY9Y3VycjsKCQkJY3Vycj1uZXh0OwoJCX0KCQlyZXR1cm4gcHJldjsKCX0KCXB1YmxpYyB2b2lkIHByaW50TEwoTm9kZSBub2RlKSB7CgkJd2hpbGUobm9kZSAhPSBudWxsKXsKCQlTeXN0ZW0ub3V0LnByaW50KG5vZGUuZ2V0TnVtKCkrIiAiKTsKCQlub2RlID0gbm9kZS5nZXROZXh0KCk7CgkJfQoJCVN5c3RlbS5vdXQucHJpbnRsbigpOwoJfQp9CmNsYXNzIElkZW9uZQp7CglwdWJsaWMgc3RhdGljIHZvaWQgbWFpbiAoU3RyaW5nW10gYXJncykgdGhyb3dzIGphdmEubGFuZy5FeGNlcHRpb24KCXsKCQlTY2FubmVyIHNjID0gbmV3IFNjYW5uZXIoU3lzdGVtLmluKTsKCQlpbnQgbj1zYy5uZXh0SW50KCk7CgkJaW50IHA9c2MubmV4dEludCgpOwoJCWludCBxPXNjLm5leHRJbnQoKTsKCQlOb2RlIGhlYWQgPSBudWxsOwoJCU5vZGUgbm9kZSA9IG51bGw7CgkJZm9yKGludCBpPTA7aTxuO2krKykKCQl7CgkJCWludCBhPXNjLm5leHRJbnQoKTsKCQkJaWYoaGVhZD09bnVsbCl7CgkJCQlub2RlID0gbmV3IE5vZGUoIGEsbnVsbCk7CgkJCQloZWFkPW5vZGU7CgkJCX0KCQkJZWxzZXsKCQkJCW5vZGUuc2V0TmV4dChuZXcgTm9kZShhLG51bGwpKTsKCQkJCW5vZGUgPSBub2RlLmdldE5leHQoKTsKCQkJfQoJCQkKCQl9CgkJaGVhZD1oZWFkLnJldmVyc2VTdWJMaXN0KGhlYWQscCxxKTsKCQloZWFkLnByaW50TEwoaGVhZCk7CgkJCgl9Cn0=