오랜만에 알고리즘 풀면서 다양한 난제를 겪었던 문제...ㅋㅋㅎㅎㅋㅋㅎㅎ (해탈) 어린이날 뛰어놀기 전 해당 문제를 기록해보고자 한다. 1. 출처 11000번: 강의실 배정 첫 번째 줄에 N이 주어진다. (1 ≤ N ≤ 200,000) 이후 N개의 줄에 Si, Ti가 주어진다. (0 ≤ Si < Ti ≤ 109) www.acmicpc.net 내가 어떠한 코드를 짰고, 왜 실패했는지 기록하겠다. 성공까지 가는 여정 렛츠고...!! 2. 설계 1) 잘못된 설계 - 시간초과 import java.util.PriorityQueue; import java.util.Scanner; public class Main { static PriorityQueue pq = new PriorityQueue(); static lo..
웬만하면 티스토리 기록 안하고, 재밌는 강의 들으러 가려고 했는데... 다익스트라 문제는 블로그에 올린 적이 없는 것 같아서 오랜만에 개념 정리도 할 겸! 정리하고자 마음을 먹었다! 무엇보다 내일은 5월 5일... 어린이 날이니까 ^^ 시간 만땅! 1. 출처 5972번: 택배 배송 농부 현서는 농부 찬홍이에게 택배를 배달해줘야 합니다. 그리고 지금, 갈 준비를 하고 있습니다. 평화롭게 가려면 가는 길에 만나는 모든 소들에게 맛있는 여물을 줘야 합니다. 물론 현서는 www.acmicpc.net 지금보니 시간이 1초가 아슬아슬하게 풀었구나 싶다 ... ㅎㅎ... 2. 설계 1. 헛간 연결 상태를 입력받고 양방향으로 연결해준다. for(int i=0;io.cow?1:-1; } } public static vo..
요즘 싸피 우리반 친구들은 어떤 문제를 푸나 궁금해서 그룹에 들어가봤더니 '치즈' 문제를 많이 풀고 있어서 나도 도전했다!!! 이 문제는 10일 전에 풀었던 2636번 골드 4 문제 치즈이다. 오늘 골드 3 치즈도 유사하게 문제를 풀었다. 다만, 2638번 치즈는 2변에 공기가 통해야지 녹는다는 조건이 하나 더 붙었기 때문에 유의해준다. 너무 오랜만에 봐서 설계 로딩 시간이 좀 길었던 문제다 ㅎㅎ... 집에와서 차분히 풀어보니 한 방에 클리어했던 문제! 렛츠 기릿! 1. 출처 2638번: 치즈 첫째 줄에는 모눈종이의 크기를 나타내는 두 개의 정수 N, M (5 ≤ N, M ≤ 100)이 주어진다. 그 다음 N개의 줄에는 모눈종이 위의 격자에 치즈가 있는 부분은 1로 표시되고, 치즈가 없는 부분은 0으로 ..
DFS 문제 연습을 하려고 했는데 너무 어려워서 결국 그래프 연결로 풀고만 트리...ㅎ 이제 그래프 문제는 준마스터인 것인가?.. 1. 출처 1068번: 트리 첫째 줄에 트리의 노드의 개수 N이 주어진다. N은 50보다 작거나 같은 자연수이다. 둘째 줄에는 0번 노드부터 N-1번 노드까지, 각 노드의 부모가 주어진다. 만약 부모가 없다면 (루트) -1이 주어진다 www.acmicpc.net 맞은 줄 알았는데, 78%에서 장렬히 틀렸던 순간... 끝까지 방심하지 말자 ^^ 2. 설계 1) 트리를 구성하자 tree를 배열로 만들고, 한 배열에 ArrayList 자식들이 딸리게 만든다. static List[] tree; //트리 구성 int start = 0; for(int i=0;i
이제 곧 싸피데이!!! 싸피데이를 즐기기 전 숨바꼭질3 문제를 풀고 공부 기록 시작한다 ㅠ 1. 출처 13549번: 숨바꼭질 3 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 www.acmicpc.net 왜이리 어려운 것이냐?... 처음 이 문제를 보고, 어떻게 문제를 풀어야할지 감이 잡히지 않았다... 그래서 결국 구글링을 통해 다른 사람들의 코드를 보며 어떻게 문제를 짜야할지 봤던 문제.. https://www.acmicpc.net/board/view/115423 글 읽기 - dp 문제가 아닌지, 다익스트라 문제인지 어떻게 판..
매주 토요일이면 충남대 할리스를 가서 공부를 하는데, 옆에서 지연이가 어떤 문제를 보며 해시맵 어렵다고 하여 나도 알려달라고 해 풀어보았다. 그동안 백준/SWEA에서 문제 풀면서 해시맵을 쓴 적이 없었던 것 같은데, 좋은 경험이 되었다. 1. 문제 출처 1620번: 나는야 포켓몬 마스터 이다솜 첫째 줄에는 도감에 수록되어 있는 포켓몬의 개수 N이랑 내가 맞춰야 하는 문제의 개수 M이 주어져. N과 M은 1보다 크거나 같고, 100,000보다 작거나 같은 자연수인데, 자연수가 뭔지는 알지? 모르면 www.acmicpc.net 문제 번호를 쳐도 나오지 않는 문제 ... 오늘도 역시 실패한 설계와 성공한 설계를 둘 다 쓸 것이다. 2. 설계 1) 실패한 설계 해시맵으로 포켓몬 번호와 이름을 저장해서 퀴즈에 포..
백준 에센셜 문제로 나와있는 요세푸스 문제 0를 풀어보았다. 원래는 큐 문제인데, 나는 구현문제라고 보고 일단 풀어보았다. 그 뒤에 다른 분의 설명을 보면서 다시 큐로 풀어보았다. 2가지 풀이법, 입맛에 맛게 준비했다! 실버 5문제인데, 생각보다 어려웠다 ㅠ ㅠ 1. 문제 출처 11866번: 요세푸스 문제 0 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 1,000) www.acmicpc.net import 깔끔하게 정리하고 2번 제출했던 문제 2. 설계 1. 첫 시작은 K(제거할 순서)부터 시작한다. 예를 들어 K=3이면 3번째 사람부터 제거한다. int targetNum=K; 2. 단순히 K만큼 가서 % N을 해주는 방식은 안된다. 예를 들어 N=7 K=3일 때..
[BFS] 백준 7576번 토마토 - JAVA 울퉁 불퉁 멋진 몸매에~ 새빨간 옷을 입고~ 새콤달콤 향기 풍기는~ 멋쟁이 토!마!토! 토마토~ 1. 문제 출처 1일 1알고리즘을 풀기위해 노력하는 나... 제법 멋져 2. 설계 1) 익은 토마토 4방으로 안익 tksgk2598.tistory.com 어제 푼 2차원 토마토에 이어 3차원 토마토를 풀 것이다. 민성, 호진 오빠한테 일기 썼다며, 토마토 문제를 보여줬더니 민성오빠가 3차원 토마토냐 2차원 토마토냐라고 물어봐서 2차원이라 했더니 3차원 토마토 추천한다고 해서 풀어보았다. 옆에 있던 영헌오빠도 강추했다. 본격 알고리즘 영재들이 추천하는 토마토 3차원 문제 LET'S GO 1. 문제 출처 7569번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 ..