4 条题解

  • 1
    @ 2024-12-18 11:43:12
    a = list(map(int, input().split()))
    key = int(input())
    i=0
    j=len(a)-1
    cnt=0
    while i<=j:
        m=(i+j)//2
        cnt+=1
        if key==a[m]:
            break
        if key%2==1:
            if a[m]%2==0:
                i=m+1
            else:
                if key>a[m]:
                    i=m+1
                else:
                    j=m-1
        else:
            if a[m]%2==1:
                j=m-1
            else:
                if key>a[m]:
                    j=m-1
                else:
                    i=m+1
    if i<=j:
        print("YES")
        print(cnt)
    else:
        print("NO")
    

    信息

    ID
    803
    时间
    1000ms
    内存
    256MiB
    难度
    5
    标签
    递交数
    667
    已通过
    234
    上传者