분류 전체보기
-
백준(BOJ) 1194번 달이 차오른다, 가자.알고리즘 풀이/백준(Boj) 2020. 3. 12. 00:58
문제 : https://www.acmicpc.net/problem/1194 1194번: 달이 차오른다, 가자. 첫째 줄에 미로의 세로 크기 N과 가로 크기 M이 주어진다. (1 ≤ N, M ≤ 50) 둘째 줄부터 N개의 줄에 미로의 모양이 주어진다. 같은 타입의 열쇠가 여러 개 있을 수 있고, 문도 마찬가지이다. 그리고, 영식이가 열쇠를 숨겨놓는 다면 문에 대응하는 열쇠가 없을 수도 있다. 0은 한 개, 1은 적어도 한 개 있다. 그리고, 열쇠는 여러 번 사용할 수 있다. www.acmicpc.net 풀이 : BFS문제이고 비트 마스킹으로 푼다면 쉽게 풀 수 있는 문제였습니다. 1
-
백준(BOJ) 2002번 추월알고리즘 풀이/백준(Boj) 2020. 3. 9. 17:00
문제 : https://www.acmicpc.net/problem/2002 2002번: 추월 문제 대한민국을 비롯한 대부분의 나라에서는 터널 내에서의 차선 변경을 법률로 금하고 있다. 조금만 관찰력이 있는 학생이라면 터널 내부에서는 차선이 파선이 아닌 실선으로 되어 있다는 것을 알고 있을 것이다. 이는 차선을 변경할 수 없음을 말하는 것이고, 따라서 터널 내부에서의 추월은 불가능하다. 소문난 명콤비 경찰 대근이와 영식이가 추월하는 차량을 잡기 위해 한 터널에 투입되었다. 대근이는 터널의 입구에, 영식이는 터널의 출구에 각각 잠복하고, 대근이는 차 www.acmicpc.net 풀이 : 해쉬 맵을 통해 각 차량이 들어온 번호와 순서를 적어두자 이제 나온 번호를 보면서 해당 차량에..
-
백준(BOJ) 1175번 배달알고리즘 풀이/백준(Boj) 2020. 3. 8. 04:16
문제 : https://www.acmicpc.net/problem/1175 1175번: 배달 어제 선물을 모두 포장한 민식이는 이제 선물을 배달하려고 한다. 민식이가 선물을 배달할 곳은 이 문제를 읽는 사람들이 앉아 있는 교실이다. 교실은 직사각형모양이고, 모두 같은 크기의 정사각형 블록으로 나누어져 있다. 입력으로 교실의 지도가 주어진다. 각각의 정사각형 블록은 다음과 같이 4가지 종류가 있다. S : 지금 민식이가 있는 곳이다. 이곳이 민식이가 배달을 시작하는 곳이다. C : 민식이가 반드시 선물을 배달해야 하는 곳이다. 이러한 블록은 정확하 www.acmicpc.net 풀이 : BFS를 통해 최소 거리를 구해주었는데 이때 d는 4차원으로 잡았다. 그 이유는 4가지 방향 배열에 의해서 각각의 경우가 ..
-
Hash 구현해보기 JavaData Structure/Data Structure 구현 2020. 3. 6. 17:35
해시란 키에 해당하는 고유한 숫자 값을 통해 해당하는 값(value)으로 바로 찾아갈 수 있는 O(1)의 복잡도를 띄는 굉장히 빠른 알고리즘이다. 자바에서는 HashMap 이 예이다. https://stackoverflow.com/questions/3069709/what-is-a-hash-function-in-java What is a hash function in java? I have check out this Wikipedia page on it, but I still don't understand it. Can someone please help my dim-witted mind to understand the concepts of hashing, hashtable/hashmap, and hash..
-
생성자 대신 static 팩토리 메소드 고려해보기JAVA/Effective java 2020. 2. 27. 16:15
클래스는 생성자와 별도로 정적 팩토리 메서드(static factory method)를 제공할 수 있다. 그 클래스의 인스턴스를 반환하는 단순한 정적 메서드 말이다. 클래스는 public 생성자 대신 정적 팩토리 메서드를 제공할 수 있다. 이 방식은 장단점이 존재한다. 장점 1. 이름을 가질 수 있다. 다음과 같이 생성자는 그 클래스와 동일한 이름으로만 만들어야 하지만 거기서 반환하는 객체를 잘 설명하지 못할 경우, 잘 만든 이름을 가진 static 팩토리를 사용하는 것이 보다 쉽고 읽기 편하다는 것. 또 똑같은 타입을 파라미터로 받는 생성자 2개를 만들 수 없는 경우 public static 팩토리 메서드를 사용하는 것이 유용하다. 2. 반드시 새로운 객체를 만들 필요가 없다. 불변 클래스인 경우나 매..
-
오픽 IH 느낀점 및 후기자격증 및/OPIC 2020. 2. 26. 14:44
오픽 첫 시험 IH를 받았다. 물론 AL은 아니지만 훗날 AL을 위해 다시 볼 때를 위해 시험을 보면서 느꼈던 여러 가지 점들을 적어보려고 한다. 우선 사람은 많을수록 좋은 것 같다. 내가 시험을 볼 때는 오후 2시 경이라 오픽을 보는 사람의 수가 10명 정도 있었는데 시끌벅적한 분위기가 아니라 혼자 연기하면서(?) 말하려다 보니 다소 민망한 경향이 있다. 따라서 이왕이면 사람도 많고 다들 말하는 분위기면 더 잘 될 것 같다는 생각이 들었다. 물론 이 의견은 개인 성향에 따 라 다를거라고 본다. 연기라고 말한 이유는 오픽을 볼 때 친구와 1:1로 대화하는 느낌으로 하기 위함이었는데 예를 들면 주어진 질문이 있을때 그 질문에 대한 답만 하기보다는 난 이랬는데 넌 어때? 라던가 혹은 날씨 관련 질문이었다면 ..