/**
* Definition for singly-linked list.
* struct ListNode {
* int val;
* ListNode *next;
* ListNode(int x) : val(x), next(NULL) {}
* };
*/
ListNode* Solution::deleteDuplicates(ListNode* A) {
ListNode *head = A, *tmp;
while(head != NULL){
tmp = head->next;
//bool b = 0;
while(tmp != 0 && tmp->val == head->val){
//cout << tmp->val << " " << head->val << endl;
//b = 1;
ListNode *tmp_two = tmp;
tmp = tmp_two->next;
delete tmp_two;
}
cout << head->val << endl;
head = tmp;
//cout << head->val << endl;
}
return A;
}
LyoqCiAqIERlZmluaXRpb24gZm9yIHNpbmdseS1saW5rZWQgbGlzdC4KICogc3RydWN0IExpc3ROb2RlIHsKICogICAgIGludCB2YWw7CiAqICAgICBMaXN0Tm9kZSAqbmV4dDsKICogICAgIExpc3ROb2RlKGludCB4KSA6IHZhbCh4KSwgbmV4dChOVUxMKSB7fQogKiB9OwogKi8KTGlzdE5vZGUqIFNvbHV0aW9uOjpkZWxldGVEdXBsaWNhdGVzKExpc3ROb2RlKiBBKSB7CiAgICBMaXN0Tm9kZSAqaGVhZCA9IEEsICp0bXA7CiAgICAKICAgIHdoaWxlKGhlYWQgIT0gTlVMTCl7CiAgICAgICAgdG1wID0gaGVhZC0+bmV4dDsKICAgICAgICAvL2Jvb2wgYiA9IDA7CiAgICAgICAgCiAgICAgICAgd2hpbGUodG1wICE9IDAgJiYgdG1wLT52YWwgPT0gaGVhZC0+dmFsKXsKICAgICAgICAgICAgLy9jb3V0IDw8IHRtcC0+dmFsIDw8ICIgIiA8PCBoZWFkLT52YWwgPDwgZW5kbDsKICAgICAgICAgICAgCiAgICAgICAgICAgIC8vYiA9IDE7CiAgICAgICAgICAgIExpc3ROb2RlICp0bXBfdHdvID0gdG1wOwogICAgICAgICAgICB0bXAgPSB0bXBfdHdvLT5uZXh0OwogICAgICAgICAgICBkZWxldGUgdG1wX3R3bzsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgY291dCA8PCBoZWFkLT52YWwgPDwgZW5kbDsKICAgICAgICBoZWFkID0gdG1wOwogICAgICAgIC8vY291dCA8PCBoZWFkLT52YWwgPDwgZW5kbDsKICAgIH0KICAgIAogICAgcmV0dXJuIEE7Cn0K