ListNode* Solution::deleteDuplicates(ListNode* A) {
if(A==NULL)
{
return NULL;
}
if(A->next==NULL)
{
return A;
}
ListNode *a = A;
ListNode *b = A->next;
while(b != NULL){
if(a->val == b->val)
{
b = b->next;
}
else
{
a->next=b;
a=b;
b= b->next;
}
}
a->next=NULL;
return A;
}
TGlzdE5vZGUqIFNvbHV0aW9uOjpkZWxldGVEdXBsaWNhdGVzKExpc3ROb2RlKiBBKSB7CiAgICBpZihBPT1OVUxMKQogICAgICAgIHsKICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgfQogICAgICAgIGlmKEEtPm5leHQ9PU5VTEwpCiAgICAgICAgewogICAgICAgICAgICByZXR1cm4gQTsKICAgICAgICB9CiAgICAgICBMaXN0Tm9kZSAqYSA9IEE7CiAgICBMaXN0Tm9kZSAqYiA9IEEtPm5leHQ7CiAgICAKICAgIHdoaWxlKGIgIT0gTlVMTCl7CiAgICAgICAgaWYoYS0+dmFsID09IGItPnZhbCkKICAgICAgICB7CiAgICAgICAgICAgIGIgPSBiLT5uZXh0OwogICAgICAgIH0KICAgICAgICBlbHNlCiAgICAgICAgewogICAgICAgICAgICBhLT5uZXh0PWI7CiAgICAgICAgICAgIGE9YjsKICAgICAgICAgICAgYj0gYi0+bmV4dDsKICAgICAgICB9CiAgICB9CiAgICAgICAgYS0+bmV4dD1OVUxMOwogICAgCiAgICByZXR1cm4gQTsKfQ==