🐍 μ½”λ”©ν…ŒμŠ€νŠΈ λŒ€λΉ„ : PS

    [ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€] νŠœν”Œ (level2, python)

    [ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€] νŠœν”Œ (level2, python)

    문제 μ„€λͺ… μ…€μˆ˜μžˆλŠ” μˆ˜λŸ‰μ˜ μˆœμ„œμžˆλŠ” μ—΄κ±° λ˜λŠ” μ–΄λ–€ μˆœμ„œλ₯Ό λ”°λ₯΄λŠ” μš”μ†Œλ“€μ˜ λͺ¨μŒμ„ νŠœν”Œ(tuple)이라고 ν•©λ‹ˆλ‹€. n개의 μš”μ†Œλ₯Ό 가진 νŠœν”Œμ„ n-νŠœν”Œ(n-tuple)이라고 ν•˜λ©°, λ‹€μŒκ³Ό 같이 ν‘œν˜„ν•  수 μžˆμŠ΅λ‹ˆλ‹€. (a1, a2, a3, ..., an) νŠœν”Œμ€ λ‹€μŒκ³Ό 같은 μ„±μ§ˆμ„ 가지고 μžˆμŠ΅λ‹ˆλ‹€. μ€‘λ³΅λœ μ›μ†Œκ°€ μžˆμ„ 수 μžˆμŠ΅λ‹ˆλ‹€. ex : (2, 3, 1, 2) μ›μ†Œμ— 정해진 μˆœμ„œκ°€ 있으며, μ›μ†Œμ˜ μˆœμ„œκ°€ λ‹€λ₯΄λ©΄ μ„œλ‘œ λ‹€λ₯Έ νŠœν”Œμž…λ‹ˆλ‹€. ex : (1, 2, 3) ≠ (1, 3, 2) νŠœν”Œμ˜ μ›μ†Œ κ°œμˆ˜λŠ” μœ ν•œν•©λ‹ˆλ‹€. μ›μ†Œμ˜ κ°œμˆ˜κ°€ n개이고, μ€‘λ³΅λ˜λŠ” μ›μ†Œκ°€ μ—†λŠ” νŠœν”Œ (a1, a2, a3, ..., an)이 μ£Όμ–΄μ§ˆ λ•Œ(단, a1, a2, ..., an은 μžμ—°μˆ˜), μ΄λŠ” λ‹€μŒκ³Ό 같이 집합 기호 '{', '}'..

    [ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€] κ΄„ν˜Έ νšŒμ „ν•˜κΈ° (level2, python)

    문제 μ„€λͺ… λ‹€μŒ κ·œμΉ™μ„ μ§€ν‚€λŠ” λ¬Έμžμ—΄μ„ μ˜¬λ°”λ₯Έ κ΄„ν˜Έ λ¬Έμžμ—΄μ΄λΌκ³  μ •μ˜ν•©λ‹ˆλ‹€. (), [], {} λŠ” λͺ¨λ‘ μ˜¬λ°”λ₯Έ κ΄„ν˜Έ λ¬Έμžμ—΄μž…λ‹ˆλ‹€. λ§Œμ•½ Aκ°€ μ˜¬λ°”λ₯Έ κ΄„ν˜Έ λ¬Έμžμ—΄μ΄λΌλ©΄, (A), [A], {A} 도 μ˜¬λ°”λ₯Έ κ΄„ν˜Έ λ¬Έμžμ—΄μž…λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, [] κ°€ μ˜¬λ°”λ₯Έ κ΄„ν˜Έ λ¬Έμžμ—΄μ΄λ―€λ‘œ, ([]) 도 μ˜¬λ°”λ₯Έ κ΄„ν˜Έ λ¬Έμžμ—΄μž…λ‹ˆλ‹€. λ§Œμ•½ A, Bκ°€ μ˜¬λ°”λ₯Έ κ΄„ν˜Έ λ¬Έμžμ—΄μ΄λΌλ©΄, AB 도 μ˜¬λ°”λ₯Έ κ΄„ν˜Έ λ¬Έμžμ—΄μž…λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, {} 와 ([]) κ°€ μ˜¬λ°”λ₯Έ κ΄„ν˜Έ λ¬Έμžμ—΄μ΄λ―€λ‘œ, {}([]) 도 μ˜¬λ°”λ₯Έ κ΄„ν˜Έ λ¬Έμžμ—΄μž…λ‹ˆλ‹€. λŒ€κ΄„ν˜Έ, μ€‘κ΄„ν˜Έ, 그리고 μ†Œκ΄„ν˜Έλ‘œ 이루어진 λ¬Έμžμ—΄ sκ°€ λ§€κ°œλ³€μˆ˜λ‘œ μ£Όμ–΄μ§‘λ‹ˆλ‹€. 이 sλ₯Ό μ™Όμͺ½μœΌλ‘œ x (0 ≤ x < (s의 길이)) 칸만큼 νšŒμ „μ‹œμΌ°μ„ λ•Œ sκ°€ μ˜¬λ°”λ₯Έ κ΄„ν˜Έ λ¬Έμžμ—΄μ΄ 되게 ν•˜λŠ” x의 개수λ₯Ό return ..

    [ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€] μ΄μ€‘μš°μ„ μˆœμœ„ν (level3, python)

    문제 μ„€λͺ… 이쀑 μš°μ„ μˆœμœ„ νλŠ” λ‹€μŒ 연산을 ν•  수 μžˆλŠ” 자료ꡬ쑰λ₯Ό λ§ν•©λ‹ˆλ‹€. λͺ…λ Ήμ–΄μˆ˜μ‹  탑(높이) I 숫자 큐에 주어진 숫자λ₯Ό μ‚½μž…ν•©λ‹ˆλ‹€. D 1 νμ—μ„œ μ΅œλŒ“κ°’μ„ μ‚­μ œν•©λ‹ˆλ‹€. D -1 νμ—μ„œ μ΅œμ†Ÿκ°’μ„ μ‚­μ œν•©λ‹ˆλ‹€. 이쀑 μš°μ„ μˆœμœ„ 큐가 ν•  μ—°μ‚° operationsκ°€ λ§€κ°œλ³€μˆ˜λ‘œ μ£Όμ–΄μ§ˆ λ•Œ, λͺ¨λ“  연산을 μ²˜λ¦¬ν•œ ν›„ 큐가 λΉ„μ–΄μžˆμœΌλ©΄ [0,0] λΉ„μ–΄μžˆμ§€ μ•ŠμœΌλ©΄ [μ΅œλŒ“κ°’, μ΅œμ†Ÿκ°’]을 return ν•˜λ„λ‘ solution ν•¨μˆ˜λ₯Ό κ΅¬ν˜„ν•΄μ£Όμ„Έμš”. μ œν•œμ‚¬ν•­ operationsλŠ” 길이가 1 이상 1,000,000 μ΄ν•˜μΈ λ¬Έμžμ—΄ λ°°μ—΄μž…λ‹ˆλ‹€. operations의 μ›μ†ŒλŠ” 큐가 μˆ˜ν–‰ν•  연산을 λ‚˜νƒ€λƒ…λ‹ˆλ‹€. μ›μ†ŒλŠ” “λͺ…λ Ήμ–΄ 데이터” ν˜•μ‹μœΌλ‘œ μ£Όμ–΄μ§‘λ‹ˆλ‹€.- μ΅œλŒ“κ°’/μ΅œμ†Ÿκ°’μ„ μ‚­μ œν•˜λŠ” μ—°μ‚°μ—μ„œ μ΅œλŒ“κ°’/μ΅œμ†Ÿκ°’μ΄ λ‘˜ 이상인 경우, ν•˜λ‚˜λ§Œ μ‚­μ œν•©..

    [ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€] μ •μˆ˜ μ‚Όκ°ν˜• (level3, python)

    [ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€] μ •μˆ˜ μ‚Όκ°ν˜• (level3, python)

    문제 μ„€λͺ… μœ„μ™€ 같은 μ‚Όκ°ν˜•μ˜ κΌ­λŒ€κΈ°μ—μ„œ λ°”λ‹₯κΉŒμ§€ μ΄μ–΄μ§€λŠ” 경둜 쀑, 거쳐간 숫자의 합이 κ°€μž₯ 큰 경우λ₯Ό 찾아보렀고 ν•©λ‹ˆλ‹€. μ•„λž˜ 칸으둜 이동할 λ•ŒλŠ” λŒ€κ°μ„  λ°©ν–₯으둜 ν•œ μΉΈ 였λ₯Έμͺ½ λ˜λŠ” μ™Όμͺ½μœΌλ‘œλ§Œ 이동 κ°€λŠ₯ν•©λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄ 3μ—μ„œλŠ” κ·Έ μ•„λž˜μΉΈμ˜ 8 λ˜λŠ” 1둜만 이동이 κ°€λŠ₯ν•©λ‹ˆλ‹€. μ‚Όκ°ν˜•μ˜ 정보가 λ‹΄κΈ΄ λ°°μ—΄ triangle이 λ§€κ°œλ³€μˆ˜λ‘œ μ£Όμ–΄μ§ˆ λ•Œ, 거쳐간 숫자의 μ΅œλŒ“κ°’μ„ return ν•˜λ„λ‘ solution ν•¨μˆ˜λ₯Ό μ™„μ„±ν•˜μ„Έμš”. μ œν•œμ‚¬ν•­ μ‚Όκ°ν˜•μ˜ λ†’μ΄λŠ” 1 이상 500 μ΄ν•˜μž…λ‹ˆλ‹€. μ‚Όκ°ν˜•μ„ 이루고 μžˆλŠ” μˆ«μžλŠ” 0 이상 9,999 μ΄ν•˜μ˜ μ •μˆ˜μž…λ‹ˆλ‹€. μž…μΆœλ ₯ 예 triangle return [[7], [3, 8], [8, 1, 0], [2, 7, 4, 4], [4, 5, 2, 6, 5]] 30 풀이 μ½”λ“œ def..

    [ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€] H-Index (level2, python)

    문제 μ„€λͺ… H-IndexλŠ” κ³Όν•™μžμ˜ 생산성과 영ν–₯λ ₯을 λ‚˜νƒ€λ‚΄λŠ” μ§€ν‘œμž…λ‹ˆλ‹€. μ–΄λŠ κ³Όν•™μžμ˜ H-Indexλ₯Ό λ‚˜νƒ€λ‚΄λŠ” 값인 hλ₯Ό κ΅¬ν•˜λ €κ³  ν•©λ‹ˆλ‹€. μœ„ν‚€λ°±κ³Ό1에 λ”°λ₯΄λ©΄, H-IndexλŠ” λ‹€μŒκ³Ό 같이 κ΅¬ν•©λ‹ˆλ‹€. μ–΄λ–€ κ³Όν•™μžκ°€ λ°œν‘œν•œ λ…Όλ¬Έ n편 쀑, h번 이상 인용된 논문이 h편 이상이고 λ‚˜λ¨Έμ§€ 논문이 h번 μ΄ν•˜ μΈμš©λ˜μ—ˆλ‹€λ©΄ h의 μ΅œλŒ“κ°’μ΄ 이 κ³Όν•™μžμ˜ H-Indexμž…λ‹ˆλ‹€. μ–΄λ–€ κ³Όν•™μžκ°€ λ°œν‘œν•œ λ…Όλ¬Έμ˜ 인용 횟수λ₯Ό 담은 λ°°μ—΄ citationsκ°€ λ§€κ°œλ³€μˆ˜λ‘œ μ£Όμ–΄μ§ˆ λ•Œ, 이 κ³Όν•™μžμ˜ H-Indexλ₯Ό return ν•˜λ„λ‘ solution ν•¨μˆ˜λ₯Ό μž‘μ„±ν•΄μ£Όμ„Έμš”. μ œν•œμ‚¬ν•­ κ³Όν•™μžκ°€ λ°œν‘œν•œ λ…Όλ¬Έμ˜ μˆ˜λŠ” 1편 이상 1,000편 μ΄ν•˜μž…λ‹ˆλ‹€. 논문별 인용 νšŸμˆ˜λŠ” 0회 이상 10,000회 μ΄ν•˜μž…λ‹ˆλ‹€. μž…μΆœλ ₯ 예 citation retu..

    [ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€] ν–‰λ ¬μ˜ κ³±μ…ˆ (level2, python)

    문제 μ„€λͺ… 2차원 ν–‰λ ¬ arr1κ³Ό arr2λ₯Ό μž…λ ₯λ°›μ•„, arr1에 arr2λ₯Ό κ³±ν•œ κ²°κ³Όλ₯Ό λ°˜ν™˜ν•˜λŠ” ν•¨μˆ˜, solution을 μ™„μ„±ν•΄μ£Όμ„Έμš”. μ œν•œ 쑰건 ν–‰λ ¬ arr1, arr2의 ν–‰κ³Ό μ—΄μ˜ κΈΈμ΄λŠ” 2 이상 100 μ΄ν•˜μž…λ‹ˆλ‹€. ν–‰λ ¬ arr1, arr2의 μ›μ†ŒλŠ” -10 이상 20 μ΄ν•˜μΈ μžμ—°μˆ˜μž…λ‹ˆλ‹€. κ³±ν•  수 μžˆλŠ” λ°°μ—΄λ§Œ μ£Όμ–΄μ§‘λ‹ˆλ‹€. μž…μΆœλ ₯ 예 arr1 arr2 result [[1, 4], [3, 2], [4, 1]] [[3, 3], [3, 3]] [[15, 15], [15, 15], [15, 15]] [[2, 3, 2], [4, 2, 4], [3, 1, 4]] [[5, 4, 3], [2, 4, 1], [3, 1, 1]] [[22, 22, 11], [36, 28, 18], [29, 20, 14]] 풀이 μ½”λ“œ d..

    [ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€] 점프와 μˆœκ°„μ΄λ™ (level2, python)

    문제 μ„€λͺ… OO μ—°κ΅¬μ†ŒλŠ” ν•œ λ²ˆμ— K 칸을 μ•žμœΌλ‘œ μ ν”„ν•˜κ±°λ‚˜, (ν˜„μž¬κΉŒμ§€ 온 거리) x 2 에 ν•΄λ‹Ήν•˜λŠ” μœ„μΉ˜λ‘œ μˆœκ°„μ΄λ™μ„ ν•  수 μžˆλŠ” νŠΉμˆ˜ν•œ κΈ°λŠ₯을 가진 아이언 슈트λ₯Ό κ°œλ°œν•˜μ—¬ νŒλ§€ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. 이 아이언 μŠˆνŠΈλŠ” κ±΄μ „μ§€λ‘œ μž‘λ™λ˜λŠ”λ°, μˆœκ°„μ΄λ™μ„ ν•˜λ©΄ 건전지 μ‚¬μš©λŸ‰μ΄ 쀄지 μ•Šμ§€λ§Œ, μ•žμœΌλ‘œ K 칸을 μ ν”„ν•˜λ©΄ K 만큼의 건전지 μ‚¬μš©λŸ‰μ΄ λ“­λ‹ˆλ‹€. κ·ΈλŸ¬λ―€λ‘œ 아이언 슈트λ₯Ό μ°©μš©ν•˜κ³  이동할 λ•ŒλŠ” μˆœκ°„ 이동을 ν•˜λŠ” 것이 더 νš¨μœ¨μ μž…λ‹ˆλ‹€. 아이언 슈트 κ΅¬λ§€μžλŠ” 아이언 슈트λ₯Ό μ°©μš©ν•˜κ³  거리가 N 만큼 λ–¨μ–΄μ Έ μžˆλŠ” μž₯μ†Œλ‘œ κ°€λ €κ³  ν•©λ‹ˆλ‹€. 단, 건전지 μ‚¬μš©λŸ‰μ„ 쀄이기 μœ„ν•΄ μ ν”„λ‘œ μ΄λ™ν•˜λŠ” 것은 μ΅œμ†Œλ‘œ ν•˜λ €κ³  ν•©λ‹ˆλ‹€. 아이언 슈트 κ΅¬λ§€μžκ°€ μ΄λ™ν•˜λ €λŠ” 거리 N이 μ£Όμ–΄μ‘Œμ„ λ•Œ, μ‚¬μš©ν•΄μ•Ό ν•˜λŠ” 건전지 μ‚¬μš©λŸ‰μ˜ μ΅œμ†Ÿκ°’μ„ return..

    [ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€] [1μ°¨]μΊμ‹œ (level2, python)

    문제 μ„€λͺ… μ§€λ„κ°œλ°œνŒ€μ—μ„œ κ·Όλ¬΄ν•˜λŠ” μ œμ΄μ§€λŠ” μ§€λ„μ—μ„œ λ„μ‹œ 이름을 κ²€μƒ‰ν•˜λ©΄ ν•΄λ‹Ή λ„μ‹œμ™€ κ΄€λ ¨λœ 맛집 κ²Œμ‹œλ¬Όλ“€μ„ λ°μ΄ν„°λ² μ΄μŠ€μ—μ„œ 읽어 λ³΄μ—¬μ£ΌλŠ” μ„œλΉ„μŠ€λ₯Ό κ°œλ°œν•˜κ³  μžˆλ‹€. 이 ν”„λ‘œκ·Έλž¨μ˜ ν…ŒμŠ€νŒ… 업무λ₯Ό λ‹΄λ‹Ήν•˜κ³  μžˆλŠ” μ–΄ν”ΌμΉ˜λŠ” μ„œλΉ„μŠ€λ₯Ό μ˜€ν”ˆν•˜κΈ° μ „ 각 λ‘œμ§μ— λŒ€ν•œ μ„±λŠ₯ 츑정을 μˆ˜ν–‰ν•˜μ˜€λŠ”λ°, μ œμ΄μ§€κ°€ μž‘μ„±ν•œ λΆ€λΆ„ 쀑 λ°μ΄ν„°λ² μ΄μŠ€μ—μ„œ κ²Œμ‹œλ¬Όμ„ κ°€μ Έμ˜€λŠ” λΆ€λΆ„μ˜ μ‹€ν–‰μ‹œκ°„μ΄ λ„ˆλ¬΄ 였래 κ±Έλ¦°λ‹€λŠ” 것을 μ•Œκ²Œ λ˜μ—ˆλ‹€. μ–΄ν”ΌμΉ˜λŠ” μ œμ΄μ§€μ—κ²Œ ν•΄λ‹Ή λ‘œμ§μ„ κ°œμ„ ν•˜λΌκ³  λ‹¦λ‹¬ν•˜κΈ° μ‹œμž‘ν•˜μ˜€κ³ , μ œμ΄μ§€λŠ” DB μΊμ‹œλ₯Ό μ μš©ν•˜μ—¬ μ„±λŠ₯ κ°œμ„ μ„ μ‹œλ„ν•˜κ³  μžˆμ§€λ§Œ μΊμ‹œ 크기λ₯Ό μ–Όλ§ˆλ‘œ ν•΄μ•Ό νš¨μœ¨μ μΈμ§€ λͺ°λΌ λ‚œκ°ν•œ 상황이닀. μ–΄ν”ΌμΉ˜μ—κ²Œ μ‹œλ‹¬λ¦¬λŠ” μ œμ΄μ§€λ₯Ό 도와, DB μΊμ‹œλ₯Ό μ μš©ν•  λ•Œ μΊμ‹œ 크기에 λ”°λ₯Έ μ‹€ν–‰μ‹œκ°„ μΈ‘μ • ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€. μž…λ ₯ ν˜•μ‹ μΊμ‹œ 크..