J1Yun
ZU-TECHLOG
J1Yun
전체 방문자
였늘
μ–΄μ œ
  • πŸ“‘ Category (135)
    • Algorithm (61)
      • πŸ“š Concept (6)
      • πŸ“˜ Baekjoon Judge (53)
      • πŸ“— Programmers (2)
    • Computer Science (42)
      • πŸ”’ Operating System (14)
      • πŸ“‘ Network (15)
      • πŸ’Ύ Database (8)
      • 🧩 Design Pattern (4)
      • πŸ”‘ Security (1)
    • Activities (12)
      • 🦁 λ©‹μŸμ΄μ‚¬μžμ²˜λŸΌ 9κΈ° (6)
      • πŸ’» SWλ§ˆμ—μŠ€νŠΈλ‘œ 13κΈ° (6)
    • Infra (1)
      • ☁️ AWS (1)
    • Languages (1)
      • πŸ’™ Python (1)
    • Backend (7)
      • πŸ”΅ Django (4)
      • 🟒 Node.js (3)
    • Ect. (8)
      • πŸ’¬ Talk (0)
      • πŸ—‚οΈ 개발직ꡰ μ·¨μ—… μ€€λΉ„μžλ£Œ (8)

λΈ”λ‘œκ·Έ 메뉴

  • ν™ˆ
  • νƒœκ·Έ
  • λ°©λͺ…둝

곡지사항

인기 κΈ€

졜근 λŒ“κΈ€

졜근 κΈ€

ν‹°μŠ€ν† λ¦¬

250x250
hELLO Β· Designed By μ •μƒμš°.
J1Yun

ZU-TECHLOG

[BOJ] λ°±μ€€ 2470번 두 μš©μ•‘ - 파이썬(Python)
Algorithm/πŸ“˜ Baekjoon Judge

[BOJ] λ°±μ€€ 2470번 두 μš©μ•‘ - 파이썬(Python)

728x90

문제

KOI λΆ€μ„€ κ³Όν•™μ—°κ΅¬μ†Œμ—μ„œλŠ” λ§Žμ€ μ’…λ₯˜μ˜ μ‚°μ„± μš©μ•‘κ³Ό μ•ŒμΉΌλ¦¬μ„± μš©μ•‘μ„ λ³΄μœ ν•˜κ³  μžˆλ‹€. 각 μš©μ•‘μ—λŠ” κ·Έ μš©μ•‘μ˜ νŠΉμ„±μ„ λ‚˜νƒ€λ‚΄λŠ” ν•˜λ‚˜μ˜ μ •μˆ˜κ°€ μ£Όμ–΄μ Έμžˆλ‹€.  μ‚°μ„± μš©μ•‘μ˜ νŠΉμ„±κ°’μ€ 1λΆ€ν„° 1,000,000,000κΉŒμ§€μ˜ μ–‘μ˜ μ •μˆ˜λ‘œ λ‚˜νƒ€λ‚΄κ³ , μ•ŒμΉΌλ¦¬μ„± μš©μ•‘μ˜ νŠΉμ„±κ°’μ€ -1λΆ€ν„° -1,000,000,000κΉŒμ§€μ˜ 음의 μ •μˆ˜λ‘œ λ‚˜νƒ€λ‚Έλ‹€.

같은 μ–‘μ˜ 두 μš©μ•‘μ„ ν˜Όν•©ν•œ μš©μ•‘μ˜ νŠΉμ„±κ°’μ€ ν˜Όν•©μ— μ‚¬μš©λœ 각 μš©μ•‘μ˜ νŠΉμ„±κ°’μ˜ ν•©μœΌλ‘œ μ •μ˜ν•œλ‹€. 이 μ—°κ΅¬μ†Œμ—μ„œλŠ” 같은 μ–‘μ˜ 두 μš©μ•‘μ„ ν˜Όν•©ν•˜μ—¬ νŠΉμ„±κ°’μ΄ 0에 κ°€μž₯ κ°€κΉŒμš΄ μš©μ•‘μ„ λ§Œλ“€λ €κ³  ν•œλ‹€. 

예λ₯Ό λ“€μ–΄, μ£Όμ–΄μ§„ μš©μ•‘λ“€μ˜ νŠΉμ„±κ°’μ΄ [-2, 4, -99, -1, 98]인 κ²½μš°μ—λŠ” νŠΉμ„±κ°’μ΄ -99인 μš©μ•‘κ³Ό νŠΉμ„±κ°’μ΄ 98인 μš©μ•‘μ„ ν˜Όν•©ν•˜λ©΄ νŠΉμ„±κ°’μ΄ -1인 μš©μ•‘μ„ λ§Œλ“€ 수 있고, 이 μš©μ•‘μ΄ νŠΉμ„±κ°’μ΄ 0에 κ°€μž₯ κ°€κΉŒμš΄ μš©μ•‘μ΄λ‹€. 참고둜, 두 μ’…λ₯˜μ˜ μ•ŒμΉΌλ¦¬μ„± μš©μ•‘λ§ŒμœΌλ‘œλ‚˜ ν˜Ήμ€ 두 μ’…λ₯˜μ˜ μ‚°μ„± μš©μ•‘λ§ŒμœΌλ‘œ νŠΉμ„±κ°’μ΄ 0에 κ°€μž₯ κ°€κΉŒμš΄ ν˜Όν•© μš©μ•‘μ„ λ§Œλ“œλŠ” κ²½μš°λ„ μ‘΄μž¬ν•  수 μžˆλ‹€.

μ‚°μ„± μš©μ•‘κ³Ό μ•ŒμΉΌλ¦¬μ„± μš©μ•‘μ˜ νŠΉμ„±κ°’μ΄ μ£Όμ–΄μ‘Œμ„ λ•Œ, 이 쀑 두 개의 μ„œλ‘œ λ‹€λ₯Έ μš©μ•‘μ„ ν˜Όν•©ν•˜μ—¬ νŠΉμ„±κ°’μ΄ 0에 κ°€μž₯ κ°€κΉŒμš΄ μš©μ•‘μ„ λ§Œλ“€μ–΄λ‚΄λŠ” 두 μš©μ•‘μ„ μ°ΎλŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€.

μž…λ ₯

첫째 μ€„μ—λŠ” 전체 μš©μ•‘μ˜ 수 N이 μž…λ ₯λœλ‹€. N은 2 이상 100,000 μ΄ν•˜μ΄λ‹€. λ‘˜μ§Έ μ€„μ—λŠ” μš©μ•‘μ˜ νŠΉμ„±κ°’μ„ λ‚˜νƒ€λ‚΄λŠ” N개의 μ •μˆ˜κ°€ λΉˆμΉΈμ„ 사이에 두고 μ£Όμ–΄μ§„λ‹€. 이 μˆ˜λ“€μ€ λͺ¨λ‘ -1,000,000,000 이상 1,000,000,000 μ΄ν•˜μ΄λ‹€. N개의 μš©μ•‘λ“€μ˜ νŠΉμ„±κ°’μ€ λͺ¨λ‘ λ‹€λ₯΄κ³ , μ‚°μ„± μš©μ•‘λ§ŒμœΌλ‘œλ‚˜ μ•ŒμΉΌλ¦¬μ„± μš©μ•‘λ§ŒμœΌλ‘œ μž…λ ₯이 μ£Όμ–΄μ§€λŠ” κ²½μš°λ„ μžˆμ„ 수 μžˆλ‹€.

좜λ ₯

첫째 쀄에 νŠΉμ„±κ°’μ΄ 0에 κ°€μž₯ κ°€κΉŒμš΄ μš©μ•‘μ„ λ§Œλ“€μ–΄λ‚΄λŠ” 두 μš©μ•‘μ˜ νŠΉμ„±κ°’μ„ 좜λ ₯ν•œλ‹€. 좜λ ₯ν•΄μ•Ό ν•˜λŠ” 두 μš©μ•‘μ€ νŠΉμ„±κ°’μ˜ μ˜€λ¦„μ°¨μˆœμœΌλ‘œ 좜λ ₯ν•œλ‹€. νŠΉμ„±κ°’μ΄ 0에 κ°€μž₯ κ°€κΉŒμš΄ μš©μ•‘μ„ λ§Œλ“€μ–΄λ‚΄λŠ” κ²½μš°κ°€ 두 개 이상일 κ²½μš°μ—λŠ” κ·Έ 쀑 μ•„λ¬΄κ²ƒμ΄λ‚˜ ν•˜λ‚˜λ₯Ό 좜λ ₯ν•œλ‹€.

 

https://www.acmicpc.net/problem/2470

 

2470번: 두 μš©μ•‘

첫째 μ€„μ—λŠ” 전체 μš©μ•‘μ˜ 수 N이 μž…λ ₯λœλ‹€. N은 2 이상 100,000 μ΄ν•˜μ΄λ‹€. λ‘˜μ§Έ μ€„μ—λŠ” μš©μ•‘μ˜ νŠΉμ„±κ°’μ„ λ‚˜νƒ€λ‚΄λŠ” N개의 μ •μˆ˜κ°€ λΉˆμΉΈμ„ 사이에 두고 μ£Όμ–΄μ§„λ‹€. 이 μˆ˜λ“€μ€ λͺ¨λ‘ -1,000,000,000 이상 1,000,00

www.acmicpc.net

 

πŸ’‘ 풀이 및 μ½”λ“œ

import sys

n = int(input())
array = list(map(int, input().split()))

array.sort()
start = 0
end = n-1
minTake = sys.maxsize

while start < end:
    take = array[start] + array[end]
    if abs(take) < minTake:
        minTake = abs(take)
        result = [array[start], array[end]]
    if take < 0:
        start += 1
    elif take > 0:
        end -= 1
    else:
        break

print(result[0], result[1])

λ°°μ—΄ μ •λ ¬ ν›„ start와 endλΌλŠ” 두 포인터λ₯Ό μ„ μ–Έν•œ λ’€, λ°°μ—΄ κ°’ 합이 0보닀 μž‘μœΌλ©΄ start+1을 톡해 합을 ν‚€μ›Œ 0에 가깝도둝 ν•˜κ³  λ°˜λŒ€λ‘œ 0보닀 크면 end-1을 ν•˜λ©΄μ„œ ν•© μ ˆλŒ“κ°’μ˜ μ΅œμ†Ÿκ°’μ„ κ΅¬ν•œλ‹€.

일일히 νƒμƒ‰ν•˜λŠ” 것이 μ•„λ‹Œ 두 포인터와 이진탐색을 ν™œμš©ν•˜λŠ” 아이디어에 λŒ€ν•œ 볡슡이 ν•„μš”ν•  것 κ°™λ‹€.

 

β€» μ΅œμ†Ÿκ°’ λ³€μˆ˜ μ΄ˆκΈ°ν™” (INF)

import sys
INF = sys.maxsize
728x90

'Algorithm > πŸ“˜ Baekjoon Judge' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€

[BOJ] λ°±μ€€ 1789번 μˆ˜λ“€μ˜ ν•© - 파이썬(Python)  (0) 2021.08.26
[BOJ] λ°±μ€€ 2473번 μ„Έ μš©μ•‘ - 파이썬(Python)  (3) 2021.08.24
[BOJ] λ°±μ€€ 10026번 적둝색약 - 파이썬(Python)  (0) 2021.07.25
[BOJ] λ°±μ€€ 2468번 μ•ˆμ „ μ˜μ—­ - 파이썬(Python)  (0) 2021.07.18
[BOJ] λ°±μ€€ 2583번 μ˜μ—­ κ΅¬ν•˜κΈ° - 파이썬(Python)  (0) 2021.07.17
    'Algorithm/πŸ“˜ Baekjoon Judge' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ 글이닀
    • [BOJ] λ°±μ€€ 1789번 μˆ˜λ“€μ˜ ν•© - 파이썬(Python)
    • [BOJ] λ°±μ€€ 2473번 μ„Έ μš©μ•‘ - 파이썬(Python)
    • [BOJ] λ°±μ€€ 10026번 적둝색약 - 파이썬(Python)
    • [BOJ] λ°±μ€€ 2468번 μ•ˆμ „ μ˜μ—­ - 파이썬(Python)
    J1Yun
    J1Yun
    개발 κ΄€λ ¨ 기술 및 곡뢀 λ‚΄μš© 기둝μž₯

    ν‹°μŠ€ν† λ¦¬νˆ΄λ°”