Uknow's Lab.
article thumbnail
[백준 2003번] [Kotlin] 수들의 합 2
코딩테스트/Kotlin 2023. 2. 16. 22:06

https://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 난이도 : 실버 4 태그 : 브루트포스, 두 포인터 설명 특정 구간이 주어지는 m과 같은 케이스를 구하는 문제입니다. 두 포인터를 사용해 풀 수 있을 것 같네요. 소스코드 import java.util.* fun main() = with(System.`in`.bufferedReader()) { val (n, m) = readLine().split(" ")...

article thumbnail
[백준 3273번] [Kotlin] 두 수의 합
코딩테스트/Kotlin 2023. 2. 4. 21:24

https://www.acmicpc.net/problem/3273 3273번: 두 수의 합 n개의 서로 다른 양의 정수 a1, a2, ..., an으로 이루어진 수열이 있다. ai의 값은 1보다 크거나 같고, 1000000보다 작거나 같은 자연수이다. 자연수 x가 주어졌을 때, ai + aj = x (1 ≤ i < j ≤ n)을 만족하는 www.acmicpc.net 난이도 : 실버 3 태그 : 두 포인터, 정렬 설명 수열이 주어질 때, 두 수의 합이 특정 수와 비슷한 수를 찾는 문제입니다. 해당 문제는 투 포인터(두 포인터)를 사용해 풀 수 있을 것 같네요. 투 포인터 투 포인터 알고리즘은 두 개의 포인터를 사용해 범위 혹은 두 개의 조합을 찾아나가는 방식입니다. 첫 원소와 마지막 원소를 가르킬 bott..

article thumbnail
[백준 1253번] [Kotlin] 좋다
코딩테스트/Kotlin 2022. 12. 13. 10:58

https://www.acmicpc.net/problem/1253 1253번: 좋다 첫째 줄에는 수의 개수 N(1 ≤ N ≤ 2,000), 두 번째 줄에는 i번째 수를 나타내는 Ai가 N개 주어진다. (|Ai| ≤ 1,000,000,000, Ai는 정수) www.acmicpc.net 난이도 : 골드 4 태그 : 자료구조, 해시를 통한 집합과 맵, 두 포인터, 이분 탐색 설명 N개의 수 중 어떤 수가 다른 두 수의 합일때, 그 수를 좋다고 합니다. 좋은 수의 개수를 찾는 문제입니다. 이 분제는 두 포인터 혹은 이분 탐색으로 풀 수 있을 것 같은데, 저는 두 포인터를 사용해 풀이하도록 하겠습니다. left, right 두 개의 포인터를 선언하고, left + right의 값이 타 값보다 작으면 left를 +..

article thumbnail
[백준 4158번] [C언어] CD
코딩테스트/C | C++ 2022. 11. 28. 23:10

https://www.acmicpc.net/problem/4158 4158번: CD 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스의 첫째 줄에는 상근이가 가지고 있는 CD의 수 N, 선영이가 가지고 있는 CD의 수 M이 주어진다. N과 M은 최대 백만이다. 다음 줄 www.acmicpc.net 난이도 : 실버 5 태그 : 자료 구조, 이분 탐색, 해시를 사용한 집합과 맵, 두 포인터 설명 두 사람이 공통으로 갖고 있는 CD의 개수를 출력하는 문제입니다. 이중 for문을 사용하여 같은 CD를 체크할 경우 시간초과에 걸릴게 뻔하므로, 다른 풀이를 생각해보아야 합니다. 1 3 6 7 9와 1 2 3 5 9, 두 개의 배열이 있습니다. 양쪽의 배열 index를 가르킬 ptr1, ptr2가 ..

article thumbnail
[백준 2470] [Kotlin] 두 용액
코딩테스트/Kotlin 2022. 2. 16. 00:30

백준 2470 두 용액 난이도 : 골드 5 태그 : 정렬, 이분 탐색, 투 포인터 문제 링크 : https://www.acmicpc.net/problem/2470 2470번: 두 용액 첫째 줄에는 전체 용액의 수 N이 입력된다. N은 2 이상 100,000 이하이다. 둘째 줄에는 용액의 특성값을 나타내는 N개의 정수가 빈칸을 사이에 두고 주어진다. 이 수들은 모두 -1,000,000,000 이상 1,000,00 www.acmicpc.net 소스코드 import kotlin.math.abs fun main() { val testCase = readLine()!!.toInt() val nums = readLine()!!.toString().trim().split(" ").map { i -> i.toInt()..