본문 바로가기

전체 글194

[백준 / 입국심사 / JAVA / 이진탐색] https://www.acmicpc.net/problem/3079 3079번: 입국심사 첫째 줄에 N과 M이 주어진다. (1 ≤ N ≤ 100,000, 1 ≤ M ≤ 1,000,000,000) 다음 N개 줄에는 각 심사대에서 심사를 하는데 걸리는 시간인 Tk가 주어진다. (1 ≤ Tk ≤ 109) www.acmicpc.net 문제 접근 int 타입의 범위를 벗어난 값들은 long타입으로 지정해주자 문제의 핵심은 반씩 시간을 줄여가면서 mid에 해당하는 시간이 통과해야되는 인원을 모두 포함하면서 최소여야한다. while문에서 통과해야되는 인원을 충족했을 때의 시간을 계속 저장해가는데, 왼쪽 범위가 오른쪽 범위를 넘기 직전까지 계속 돌기 때문에 범위가 가장 좁혀졌을 때 인원을 충족한 시간 값이 result에.. 2023. 5. 4.
[SWEA / 간단한 소인수분해 / JAVA] https://swexpertacademy.com/main/code/problem/problemDetail.do?problemLevel=2&contestProbId=AV5Pl0Q6ANQDFAUq&categoryId=AV5Pl0Q6ANQDFAUq&categoryType=CODE&problemTitle=&orderBy=FIRST_REG_DATETIME&selectCodeLang=ALL&select-1=2&pageSize=10&pageIndex=2 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 문제 접근 소인수분해는 소수의 곱으로 이루어진 수이기 때문에 구성하는 소수로 나눴을 때 해당 소수의 갯수만큼 나머지가 0으.. 2023. 5. 4.
[SWEA / 날짜 계산기 / JAVA] https://swexpertacademy.com/main/code/problem/problemDetail.do?problemLevel=2&contestProbId=AV5PnnU6AOsDFAUq&categoryId=AV5PnnU6AOsDFAUq&categoryType=CODE&problemTitle=&orderBy=FIRST_REG_DATETIME&selectCodeLang=ALL&select-1=2&pageSize=10&pageIndex=2 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 문제 접근 두 번째 날짜가 첫 번째 날짜의 몇 번 째 날짜인지 구하라는데 처음엔 단순 두 날짜의 차이를 구하는지 알았는데,.. 2023. 5. 3.
[SWEA / 두 개의 숫자열 / JAVA] https://swexpertacademy.com/main/code/problem/problemDetail.do?problemLevel=2&contestProbId=AV5PpoFaAS4DFAUq&categoryId=AV5PpoFaAS4DFAUq&categoryType=CODE&problemTitle=&orderBy=FIRST_REG_DATETIME&selectCodeLang=ALL&select-1=2&pageSize=10&pageIndex=2 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 문제 접근 두 배열의 길이에 따라 조건을 걸어서 실행 처음엔 작은 쪽 배열의 인덱스를 통째로 한 칸 씩 움직일려고 생각했는.. 2023. 5. 2.
[백준 9934번 / 완전 이진 트리 / JAVA / DFS] https://www.acmicpc.net/problem/9934 9934번: 완전 이진 트리 상근이는 슬로베니아의 도시 Donji Andrijevci를 여행하고 있다. 이 도시의 도로는 깊이가 K인 완전 이진 트리를 이루고 있다. 깊이가 K인 완전 이진 트리는 총 2K-1개의 노드로 이루어져 있다. (아래 www.acmicpc.net 문제 접근 익숙하지 않은 형태라 정답에 도달하기 힘들어 방법을 참고하였다. 핵심은 노드 방문 순서가 담긴 배열을 반씩 쪼개가며 중간값을 해당 깊이 list에 삽입한다. dfs라 왼쪽 노드부터 쭉 탐색해간다. 마지막 왼쪽 노드에 도달할 경우 시작 인덱스와 마지막 인덱스의 번호가 [0, 0]이라 중간 인덱스는 0이 되어 arr[0] 값이 해당 깊이 list에 담기게 될 것이다.. 2023. 5. 1.
[SWEA / 숫자 배열 회전 / JAVA] https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5Pq-OKAVYDFAUq SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 문제 접근 90도 씩 배열을 돌리면 되는 구조 그런데 머릿속으로만 생각하려니 전체적인 구조가 확 잡히지 않았다. 다른 사람 풀이를 봐도 이해가 안되서 직접 그려서 90도 씩 돌렸을 때 구조를 보았다. N이 3일 때 Original 배열과 90도 돌아간 배열을 비교해보면 90도 배열 Original 배열 [0,0] [0,1] [0,2] [2,0] [1,0] [0,0] [1,0] [1,1] [1,2] .. 2023. 5. 1.