/**
* Definition for singly-linked list.
* struct ListNode {
* int val;
* ListNode *next;
* ListNode(int x) : val(x), next(NULL) {}
* };
*/
ListNode* Solution::reverseBetween(ListNode* A, int B, int C) {
int m = B, n = C, N = 0;
ListNode *a = A;
while(a != 0){
N++;
a = a->next;
}
ListNode **nodeAtIdx = new ListNode *[N];
a = A;
for(int i = 0; i < N; i++){
nodeAtIdx[i] = a;
a = a->next;
cout << "node" << endl;
}
int j = 0;
for(int i = m - 1; i < (m + n) / 2; i++, j++){
a = nodeAtIdx[i];
ListNode *b = nodeAtIdx[n - j - 1];
cout << "i: " << i << endl;
cout << "a: " << a->val << endl;
cout << "b: " << b->val << endl;
int tmp = a->val;
a->val = b->val;
b->val = tmp;
}
return A;
}
LyoqCiAqIERlZmluaXRpb24gZm9yIHNpbmdseS1saW5rZWQgbGlzdC4KICogc3RydWN0IExpc3ROb2RlIHsKICogICAgIGludCB2YWw7CiAqICAgICBMaXN0Tm9kZSAqbmV4dDsKICogICAgIExpc3ROb2RlKGludCB4KSA6IHZhbCh4KSwgbmV4dChOVUxMKSB7fQogKiB9OwogKi8KTGlzdE5vZGUqIFNvbHV0aW9uOjpyZXZlcnNlQmV0d2VlbihMaXN0Tm9kZSogQSwgaW50IEIsIGludCBDKSB7CiAgICBpbnQgbSA9IEIsIG4gPSBDLCBOID0gMDsKICAgIAogICAgTGlzdE5vZGUgKmEgPSBBOwogICAgd2hpbGUoYSAhPSAwKXsKICAgICAgICBOKys7CiAgICAgICAgYSA9IGEtPm5leHQ7CiAgICB9CiAgICAKICAgIAogICAgTGlzdE5vZGUgKipub2RlQXRJZHggPSBuZXcgTGlzdE5vZGUgKltOXTsKICAgIGEgPSBBOwogICAgZm9yKGludCBpID0gMDsgaSA8IE47IGkrKyl7CiAgICAgICAgbm9kZUF0SWR4W2ldID0gYTsKICAgICAgICBhID0gYS0+bmV4dDsKICAgICAgICBjb3V0IDw8ICJub2RlIiA8PCBlbmRsOwogICAgfQogICAgCiAgICBpbnQgaiA9IDA7CiAgICBmb3IoaW50IGkgPSBtIC0gMTsgaSA8IChtICsgbikgLyAyOyBpKyssIGorKyl7CiAgICAgICAgYSA9IG5vZGVBdElkeFtpXTsKICAgICAgICBMaXN0Tm9kZSAqYiA9IG5vZGVBdElkeFtuIC0gaiAtIDFdOwogICAgICAgIAogICAgICAgIGNvdXQgPDwgImk6ICIgPDwgaSA8PCBlbmRsOwogICAgICAgIGNvdXQgPDwgImE6ICIgPDwgYS0+dmFsIDw8IGVuZGw7CiAgICAgICAgY291dCA8PCAiYjogIiA8PCBiLT52YWwgPDwgZW5kbDsKICAgICAgICAKICAgICAgICBpbnQgdG1wID0gYS0+dmFsOwogICAgICAgIGEtPnZhbCA9IGItPnZhbDsKICAgICAgICBiLT52YWwgPSB0bXA7CiAgICB9CiAgICAKICAgIHJldHVybiBBOwp9Cg==
prog.cpp:9:1: error: ‘ListNode’ does not name a type
ListNode* Solution::reverseBetween(ListNode* A, int B, int C) {
^~~~~~~~