본문 바로가기

시뮬레이션24

[자바] 백준 13567 - 로봇 (java) 문제 : boj13567 필요 알고리즘 개념 구현, 시뮬레이션 문제에서 제시된 대로 구현만 잘 하면 풀 수 있다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 변수들 설계만 잘 하면 의외로 엄청 쉽게 풀린다. 내 경우엔 아래와 같이 진행했다. r : y축 값 (내 경우엔 y, x론 헷갈려서 행과 열을 뜻하는 row, column으로 r과 c를 주로 사용한다.) - 초기값 0 c : x축 값 - 초기값 0 dir : 0-북,.. 2022. 10. 25.
[자바] 백준 22864 - 피로도 (java) 문제 : boj22864 필요 알고리즘 개념 그리디 알고리즘 논리적으로 최선의 경우를 만드는 규칙을 정해 모든 경우에 적용시켜서 풀 수 있다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 뭔가 곱셈, 나눗셈으로 풀 수 있을 것 처럼 생겼는데, 단 한번이라도 M을 넘기면 안되는걸 판단하기가 많이 어려울 것 같다. 24시간만 판단하면 되므로 총 24번 매번 확인하면 된다. 확인 방식은 간단한데, 매번 A만큼 피로도가 쌓여도 M.. 2022. 10. 25.
[자바] 프로그래머스 - 크레인 인형뽑기 게임 (Lv1, Java) 문제 : Programmers-크레인 인형뽑기 게임 문제 출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges 필요 알고리즘 개념 시뮬레이션 문제에서 제시된 대로 구현만 해주면 된다. 스택 배열 자체로 구해도 문제 없으나, 로직 구성상 스택을 활용하면 더 깔끔하게 구현 가능하다 배열 자체에서 진행해도 되지만, 실수를 확실히 줄일 수 있고 더 맞는 자료구조가 있다면 그걸 쓰는게 맞다고 본다. 이 문제의 경우 각 열에 대해 스택 자료구조를 사용하고, 바구니도 스택을 사용할 시 코드 설계가 매우 깔끔해지고 실수의 여지도 많이 줄어든다. 그러니 스택을 사용해서 한번 구현해보자. 예를들어 코드상의 stk[]과 basket은 다음과 같은 스택 구조를 나.. 2022. 9. 17.
[자바] 백준 1244 - 스위치 켜고 끄기 (java) 문제 : boj1244 필요 알고리즘 개념 시뮬레이션 (구현) 주어진 대로 구현만 가능하다면 풀 수 있는 문제이다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 주어진대로 구현만 해주면 된다. 로직은 다음과 같다. 1. 스위치 개수 n을 입력받아 해당하는 크기의 배열을 만든다. 그리고 n개의 현재 상태를 입력받아 배열에 넣어둔다. 이 때 어차피 스위치가 켜져있는지 꺼져있는지만 알면 되므로, int 배열로 해도 되고 bool.. 2022. 8. 30.
[자바] 백준 17554 - City of Lights (java) 문제 : boj17554 필요 알고리즘 개념 시뮬레이션 (구현) 주어진 대로 구현만 할 줄 알면 풀 수 있다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 영어 독해 문제이다. 영어를 잘 해석해서 그대로 구현만 해주면 되는 시뮬레이션 문제이다. 로직은 아래와 같다. 1. 크기 N을 입력받아 배열을 만들고 불빛을 모두 켠 상태로 초기화한다(boolean[]으로 하던지 int[] 로 하던지 뭘로 하던 상관 없다. 켠걸 뭘로 표.. 2022. 8. 30.
[자바] 백준 22949 - 회전 미로 탐색 (java) 문제 : boj22949 필요 알고리즘 개념 BFS (너비 우선 탐색) 탈출 까지의 최소 이동시간을 빠르게 알 수 있기 위해 BFS를 사용해야 한다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 오랜만에 재밌는 BFS 문제였다. BFS를 이해하는데 도움이 많이될 것 같은 문제로, 풀어보면 도움이 많이될 것 같다. 우선 이 문제는 BFS를 상당히 잘 이해하고 있어야 풀 수 있다. 다른거 안들어간 순수 BFS 문제중에서는 거의.. 2022. 8. 27.