본문 바로가기
코딩 테스트/do it! 알고리즘 코딩테스트

007 주몽

by ornni 2024. 4. 11.
728x90
반응형

첫번째 코드

 

투 포인터를 배웠으니까 이용해서 풀어보자!

 

sorting을 진행하여 오름차순으로 변경

합이 작으면 : 시작 += 1

합이 크면 : 끝 -= 1

합이 같으면: 시작 += 1, 끝 -= 1

 

라고 생각을 했는데 계속 같은 수가 있으면? 이라는 생각으로 코드를 만들면서 엉켜버렸다...

큰 아이디어는 바뀌지 않고 책을 보면서 코드와 생각 정리하면서 정답을 맞췄다!

 

import sys
input = sys.stdin.readline

n = int(input())
m = int(input())
number = list(map(int, input().split()))

one = 0
two = n-1
count = 0

sort_number = sorted(number)

while one < two:
    sum = sort_number[one] + sort_number[two]
    if sum == m:
        count += 1
        one += 1
        two -= 1
    elif sum < m:
        one += 1
    else:
        two -= 1

print(count)

 

통과!


링크

https://github.com/ornni/programmers/tree/main/%EB%B0%B1%EC%A4%80/Silver/1940.%E2%80%85%EC%A3%BC%EB%AA%BD

 

programmers/백준/Silver/1940. 주몽 at main · ornni/programmers

repository for recording Programmers Algorithm problem solving - ornni/programmers

github.com

 

반응형

'코딩 테스트 > do it! 알고리즘 코딩테스트' 카테고리의 다른 글

009 DNA 비밀번호  (2) 2024.04.15
008 좋아  (2) 2024.04.11
006 수들의 합 5  (0) 2024.04.08
005 나머지 합  (0) 2024.04.08
003 구간 합 구하기 4  (0) 2024.04.04