일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 프로그래머스 알고리즘
- 막내의막무가내 안드로이드 코틀린
- 안드로이드
- 막내의막무가내 목표 및 회고
- 안드로이드 sunflower
- 프래그먼트
- Fragment
- 안드로이드 Sunflower 스터디
- 막내의막무가내 안드로이드
- 막내의막무가내 코볼 COBOL
- 부스트코스
- 막내의막무가내 SQL
- 막내의막무가내 프로그래밍
- 막내의막무가내 코틀린
- 막내의막무가내 일상
- 막내의막무가내 코틀린 안드로이드
- 막내의막무가내 플러터 flutter
- 막내의 막무가내 알고리즘
- flutter network call
- 막내의막무가내 플러터
- 막내의막무가내 안드로이드 에러 해결
- 막내의 막무가내
- 주엽역 생활맥주
- 막무가내
- 부스트코스에이스
- 막내의막무가내 알고리즘
- 주택가 잠실새내
- 2022년 6월 일상
- 막내의막무가내
- 막내의막무가내 rxjava
- Today
- Total
목록알고리즘/투포인터 (3)
막내의 막무가내 프로그래밍 & 일상
www.acmicpc.net/problem/2470 2470번: 두 용액 첫째 줄에는 전체 용액의 수 N이 입력된다. N은 2 이상 100,000 이하이다. 둘째 줄에는 용액의 특성값을 나타내는 N개의 정수가 빈칸을 사이에 두고 주어진다. 이 수들은 모두 -1,000,000,000 이상 1,000,00 www.acmicpc.net 백준 투포인터 유형에 있는 두 용액이라는 문제를 풀어봤습니다. ㅎㅎ 두 개의 용액을 골라 합이 0하고 가장 가까운 두 용액을 출력해주면 되는 문제입니다. 풀이방법을 간단히 설명하면 1. 용액 배열 정렬 2. 양쪽 끝으로 투 포인터 탐색을 해주면 됩니다. 가장 0하고 가까운 값이 나오면 정답을 갱신해주고 둘의 차이가 양수면 오른쪽 포인터를 더 작은 값을 가진 왼쪽으로 움직음으로써..
www.acmicpc.net/problem/1806 1806번: 부분합 첫째 줄에 N (10 ≤ N < 100,000)과 S (0 < S ≤ 100,000,000)가 주어진다. 둘째 줄에는 수열이 주어진다. 수열의 각 원소는 공백으로 구분되어져 있으며, 10,000이하의 자연수이다. www.acmicpc.net 백준 알고리즘 분류에서 투포인터 유형의 두 번째 문제인 부분합을 풀어봤습니다. ㅎㅎ 투포인터 유형인 만큼 완탐으로 풀면 시간초과가 나게됩니다. N개의 수열이 있는데 연속된 수들의 합(부분합) S 이상인 것 중 가장 짧은 길이를 구하는 문제였습니다. 투포인터는 다음과 같이 나눴습니다. 부분합이 S보다 적은 경우는 right를 오른쪽으로 이동 더 큰 경우는 left를 왼쪽으로 이동시킴으로써 더 적은 ..
www.acmicpc.net/problem/2003 2003번: 수들의 합 2 첫째 줄에 N(1≤N≤10,000), M(1≤M≤300,000,000)이 주어진다. 다음 줄에는 A[1], A[2], …, A[N]이 공백으로 분리되어 주어진다. 각각의 A[x]는 30,000을 넘지 않는 자연수이다. www.acmicpc.net 완전탐색으로 하는 경우 시간초과가 날때가 있었습니다. 그 경우 투포인터 방법을 사용하면 시간초과를 해결할 확률이 높아집니다. 투 포인터의 대표 샘플 문제로 불리는 수들의 합2를 풀어보았습니다. [Java] import java.util.Scanner; public class Main { private static int[] num; private static int left = 0; ..