본문 바로가기
반응형

문제풀이81

[ 알고리즘 ] 코딩 백준 2933 - 미네랄.java 백준 2933 - 미네랄 * 자바로 구현 * 두 사람은 한 동굴의 소유권을 가지고 싸운다. * 두 사람은 막대기를 던지며 싸우는데 미네랄을 파과할 수도 있다. * 동굴은 R x C크기. 각 칸은 비었거나 미네랄이 존재 * 네 방향중 하나로 인접한 미네랄은 한 클러스터. * 한 사람은 왼쪽에 또 다른 사람은 오른쪽에 서있음. * 번갈아가며 막대기를 던짐. 막대는 날아가는 높이가 있고, 땅과 수평을 그리며 날아감. * 날아가다 미네랄을 만난다면 미네랄은 파괴되고 막대기는 멈춤. * 미네랄이 파괴된 경우에는 클러스터가 분리될 수도 있음. 분리된 클러스터는 중력의 영향을 받아 바닥으로 떨어지는데 다른 클러스터를 만나거나, 땅에 떨어질 때 까지 이동. 아래와 같이 붉은 x가 파괴되는 순간 하늘에 있는 클러스터는 .. 2020. 9. 7.
[ 알고리즘 ] 코딩 백준 15961 - 회전초밥.java 백준 15961 - 회전초밥 * 자바로 구현 * 벨트위에 회전초밥이 있음. 같은 초밥이 둘 이상 있을 수있다. * 1. 연속으로 k개의 초밥​을 먹으면 가격을 할인해준다. * 2. 모든 고객에게 초밥의 종류가 쓰여진 쿠폰을 주고, 1번행사에 참가한 경우 이 쿠폰에 적힌 종류의 초밥을 무료로 준다. * 행사에 참여하여 가능한한 많은 양의 초밥을 먹을 때 최대값을 출력 * 무조건 연속된 경우만을 고려해야한다!! * N : 접시수, d : 초밥의 가지수, k : 연속해서 먹는 접시 수, c : 쿠폰번호 ​* 생각하는데도... 테스트케이스도 .... 상당히 시간이.. 걸렸다.. * 큐로 짜도 괜찮을 거 같다! public class BOJ_15961_Rotate_Sushi { static int N, d, k,.. 2020. 9. 7.
[ 알고리즘 ]코딩 백준 9663 - N-Queen - 1차원배열을 이용해서 구현.java 백준 9663 - N-Queen * 자바로 구현 * 1차원 배열로 짜는 방법. * 이렇게 깔끔하게 짤 수 있게 열심히 공부해야겠다 public class BOJ_9663_Queen { static int N; static int[] sel; static int totalCnt; public static void main(String[] args) { Scanner sc = new Scanner(System.in); N = sc.nextInt(); sel = new int[N+1]; setQueens(1); // 1열부터 시작 System.out.println(totalCnt); } // 퀸을 현재(row) 행에 놓기 public static void setQueens(int row) { if(row > .. 2020. 9. 5.
[ 알고리즘 ] 코딩 백준 1406 - 에디터 만들기 - Double Stack -.java 백준 1406 - Editor 만들기 * 자바로 구현 * 스택을 2개 사용해야 한다고 한다. * 현재 커서를 기준으로 왼쪽과 오른쪽 두개의 스택을 운용하면 4개의 연산을 처리하는데 걸리는 시간은 매우 적다 * 알고리즘적 사고를 많이 키워야겠다!! public class Editor_Double_Stack { public static void main(String[] args) throws IOException{ Editor_Double_Stack ep = new Editor_Double_Stack(); ep.editor(); } /** 에디터 구현 부*/ private void editor() throws IOException{ BufferedReader br = new BufferedReader(new.. 2020. 9. 5.
[ 알고리즘 ] 코딩 백준 2606 - 새로운 바이러스.java 백준 2606 - 새로운 바이러스 * 자바로 구현 * 어떤 그래프가 주어진다. * 해당 정점이 바이러스가 걸린다면 ( 이 문제에서는 1번으로 고정 ) * 연결된 모든 정점이 감염된다. * 어떤 한 정점이 감염되었을 때 * 그로인해 감염되는 컴퓨터의 수를 구하라 * BFS로 구현 public class BOJ_2606_New_Virus { static int VERTEXS, EDGES, totalCnt; static int graph[][]; static boolean visited[]; public static void main(String[] args) throws Exception { // 속도 개선을 위해 BufferedReader, StringTokenizer 이용 BufferedReader br.. 2020. 9. 5.
반응형