[백준]1806번 부분합 - python 파이썬

2025. 1. 21. 15:09·코딩테스트/백준

문제

 

 

 

문제를 보자마자 딱 투포인터를 활용해서 풀어야겠다는 생각이 들었다.

 

 

시작점과 끝점을 두어 s보다 커지면 시작점을 옮기고 작을땐 끝점을 옮겨주면서 확인 해주었다.

 

 

정답코드

 

n, s = map(int,input().split())
arr = list(map(int,input().split()))

end = 0
inf = float('inf')
ans = inf
count = 0

for i in range(n):

    while count < s and end<n:
        count += arr[end]
        end += 1

    #while문 수행 이후에도 count가 s보다 작을 수 있으므로 if문 처리
    if count >= s:
        ans = min(ans,end-i)

    #다음 시작점으로 이동위해 현재 시작점의 값 빼줌
    count -= arr[i]

if ans == inf:
    ans = 0
print(ans)

 

 

 

처음에

#while문 수행 이후에도 count가 s보다 작을 수 있으므로 if문 처리
if count >= s:
ans = min(ans,end-i)

 

이 부분을 if 문으로 확인을 안하고 단순하게 while문이 수행된 이후에는 count가 s보다 무조건 크다고 잘못 생각하였다.

 

하지만 현재 인덱스부터 끝까지 전부 더해도 s보다 작은 경우가 존재할 수 있으므로

count가 s보다 큰 경우에만 정답을 갱신하도록 조건을 걸어 주었다.

'코딩테스트 > 백준' 카테고리의 다른 글

[백준] 2580번 스도쿠 - python파이썬 (백트래킹)  (1) 2025.01.23
[백준] 2110번 공유기 설치 - python 파이썬 (이분탐색)  (4) 2025.01.22
[백준]11054번 가장 긴 바이토닉 부분수열 - python파이썬  (2) 2025.01.15
[백준]14502번 연구소 BFS - python  (1) 2025.01.06
[백준] 2212번 센서 - python파이썬  (0) 2024.12.18
'코딩테스트/백준' 카테고리의 다른 글
  • [백준] 2580번 스도쿠 - python파이썬 (백트래킹)
  • [백준] 2110번 공유기 설치 - python 파이썬 (이분탐색)
  • [백준]11054번 가장 긴 바이토닉 부분수열 - python파이썬
  • [백준]14502번 연구소 BFS - python
hiwon
hiwon
천천히 굴러가는 코딩일기
  • hiwon
    하이원의 코딩 일기
    hiwon
  • 전체
    오늘
    어제
    • 분류 전체보기 (83)
      • 프론트엔드 (0)
        • react (0)
      • 백엔드 (13)
        • node.js (1)
        • spring (6)
      • 코딩테스트 (57)
        • 백준 (41)
        • 프로그래머스 (15)
      • 프로디지털아카데미 (9)
        • 클라우드 (1)
        • JavaScript (1)
      • github (1)
      • AWS (2)
      • Infra (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    파이썬
    UnionFind
    알파코
    K디지털트레이닝
    Java
    EC2
    백엔드
    백준
    다익스트라
    신한투자증권
    bastion host
    투포인터
    spring
    github
    알고리즘
    IT기획
    MSA
    그리디
    깃허브
    python
    BFS
    AWS
    프디아
    kdt교육
    프로디지털아카데미
    코딩테스트
    백트래킹
    코테
    프로그래머스
    알파코캠퍼스
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
hiwon
[백준]1806번 부분합 - python 파이썬
상단으로

티스토리툴바