제출 #1232129

#제출 시각아이디문제언어결과실행 시간메모리
1232129durdonaTable Tennis (info1cup20_tabletennis)Pypy 3
87 / 100
3098 ms88996 KiB
import random
n,k=map(int,input().split())
arr=list(map(int,input().split()))
while True:
        i = random.randint(0,min(n + k - 1, k + 15))
        j = random.randint(max(0, n - i - 10),n+k-1)
        if i + j >= n + k: continue
        s=arr[i]+arr[i + j]
        l,r=0,n+k-1
        f = 0
        while l<r and f<n:
            if arr[l]+arr[r]<s:
                l+=1
            elif arr[l]+arr[r]>s:
                r-=1
            else:
                f += 2
                l+=1
                r-=1
        if f==n:
            oks = s
            ja=[]
            l,r=0,n+k-1
            while l<r and len(ja)<n:
                if arr[l]+arr[r]<oks:
                    l+=1
                elif arr[l]+arr[r]>oks:
                    r-=1
                else:
                    ja.append(arr[l])
                    ja.append(arr[r])
                    l+=1
                    r-=1
            for i in sorted(ja):
                print(i,end=' ')
            break

컴파일 시 표준 출력 (stdout) 메시지

Compiling 'tabletennis.py'...

=======
  adding: __main__.pyc (deflated 38%)

=======
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...