# class ListNode:
#     def __init__(self, x):
#         self.val = x
#         self.next = None
#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
#
# @param pHead ListNode类
# @return ListNode类
#
class Solution:
    def deleteDuplication(self, pHead: ListNode) -> ListNode:
        # write code here
        if not pHead or not pHead.next:
            return pHead
        head = ListNode
        head.next = pHead
        p = head.next
        pre = head
        flag = False
        while(p.next):
            if(p.next.val == p.val):
                p = p.next
                pre.next = p
                flag = True
            elif(p.next.val != p.val and flag):
                p = p.next
                pre.next = p
                flag = False
            else:
                p = p.next
                pre = pre.next
        if flag:
            pre.next = None
        return head.next