/**
* Definition for singly-linked list.
* struct ListNode {
* int val;
* ListNode *next;
* ListNode(int x) : val(x), next(NULL) {}
* };
*/
class Solution {
public:
vector<int> reversePrint(ListNode* head) {
vector<int> ans;
ListNode *p = head;
while(p){
ans.push_back(p->val);
p = p->next;
}
int left = 0, right = ans.size()-1;
while(left < right){
int t = ans[left];
ans[left] = ans[right];
ans[right] = t;
left++;
right--;
}
return ans;
}
};