전체 글
-
[백준 1726 - JAVA] 로봇Algorithm 2020. 11. 9. 18:22
1726번: 로봇 많은 공장에서 로봇이 이용되고 있다. 우리 월드 공장의 로봇은 바라보는 방향으로 궤도를 따라 움직이며, 움직이는 방향은 동, 서, 남, 북 가운데 하나이다. 로봇의 이동을 제어하는 명령어는 www.acmicpc.net 로봇을 도착 지점에 원하는 방향으로 이동시키는데 필요한 최소 명령 횟수를 출력하자! 아래 사항과 방문 처리만 주의한다면 문제없이 풀 수 있다. 방향이 동서남북 순서 시작점과 도착점이 같을 수 있다 -> 그러면 답이 0 2칸 이상 이동시 이동중 벽을 만날 경우 이동할 수 없다. 풀이 방법 입력받는 시작, 도착 위치가 1부터 이기때문에 1을 빼준뒤 저장한다. 시작점을 넣고 BFS를 시작하고, 방문 배열은 위치에 방향을 포함하여 3차원으로 처리한다. 이동 명령 먼저 수행하고, ..
-
[백준 9019 - JAVA] DSLRAlgorithm 2020. 11. 9. 18:19
9019번: DSLR 네 개의 명령어 D, S, L, R 을 이용하는 간단한 계산기가 있다. 이 계산기에는 레지스터가 하나 있는데, 이 레지스터에는 0 이상 10,000 미만의 십진수를 저장할 수 있다. 각 명령어는 이 레지스터에 www.acmicpc.net 숫자A에서 숫자B로 변환하기 위해 필요한 최소한의 명령어 나열을 구하자! bfs에 대한 개념을 잘 잡고 있다면 간단하게 풀 수 있다. 제출 후 정답율이 올라가는게 삐끄덕 거리면서 느려서 당황했지만 무사히 통과! ✧ʕ̢̣̣̣̣̩̩̩̩·͡˔·ོɁ̡̣̣̣̣̩̩̩̩✧ 풀이 방법 숫자와 문자열을 가진 Number클래스를 이용해 bfs를 수행한다. 큐에 숫자A를 넣고 시작한다. DSLR을 순차적으로 실행 후, 숫자를 비교하여 숫자B와 같을 경우 문자열을 반환한..
-
[Mac] 이클립스를 하나 더 실행하는 방법Etc 2020. 11. 9. 18:17
mac에서 이클립스를 두개 키고 싶었다... 하나의 이클립스가 실행되어 있다면, 터미널을 키고 Eclipse.app이 설치되어있는 폴더로 이동한다. 주로 루트안의 eclicpse나, applications안에 설치가 되어있다. ( 나같은 경우는 ~/eclipse/java-2019-09/에 설치되어 있었다. ) cd ~/eclipse/java-2019-09/ 이동 한 후에 아래 명령어를 입력하여 이클립스를 실행하면 된다. open -n Eclipse.app
-
[SWEA 4727 - JAVA] 견우와 직녀Algorithm 2020. 11. 9. 18:12
SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 견우가 까마귀와 까치의 도움으로 최대한 빠르게 직녀에게 가는 방법을 찾아내자! BFS에 여러가지 조건을 적용한 문제로, 예전에 풀었던 신호등과 비슷한 문제다. 신호등은 추후에 업로드시 링크를 달아야겠다! 문제를 읽기가 힘들고, 조건을 이해하는게 힘들었다…. 풀이 방법 BFS를 돌면서 아래의 조건을 만족시킨다. 방문처리는 메모이제이션으로 가장 짧은 시간을 저장하여 확인한다. 오작교는 시간이 T라면 T의 배수에 건널 수 있다. 견우는 절벽을 연속으로 건널 수 없다. 교차하는 곳에는 오작교를 만들 수 없다. 0인 곳 (M인 오작교)는 한 개만 만들 수 있다. impor..
-
[백준 2887 - JAVA] 행성터널Algorithm 2020. 11. 9. 18:09
2887번: 행성 터널 첫째 줄에 행성의 개수 N이 주어진다. (1 ≤ N ≤ 100,000) 다음 N개 줄에는 각 행성의 x, y, z좌표가 주어진다. 좌표는 -109보다 크거나 같고, 109보다 작거나 같은 정수이다. 한 위치에 행성이 두 개 이 www.acmicpc.net 모든 행성을 터널로 연결하는데 필요한 최소 비용을 출력한다! 간선을 찾고 MST로 연결하는 것은 쉽지만, 행성의 개수가 100,000개로 시간초과 혹은 메모리 초과가 발생하는 문제다. 나같은 경우에도 메모리 초과를 3번 겪고난 후 다른 블로그를 참고하여 문제를 해결했다. 풀이 방법 각 행성의 Index와 x, y, z를 저장하고 Union-Find에서 사용할 배열을 초기화한다. 행성들의 거리를 계산하여 간선으로 PQ에 삽입한다. ..