출저 : https://www.acmicpc.net/problem/15685 "아이디어가 필요한 구현문제" 삼성 기출 문제. 각 세대를 더해 갈 수록 기존에 찍었던 선들을 모두 왼쪽으로 돌려서 다시 그려준다. 초기에 생각만 잘하면 쉽게 풀릴 문제 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.ArrayList;import java.util.Lis..
출저 : https://www.acmicpc.net/problem/15684 "브루트포스" 기존에 있는 사다리에 가능한 가로축을 모두 탐색해보는 브루트 포스 문제이다. 그럼 사다리를 배열에 어떻게 표현할까? 풀이에서 배열에 1로 체크된 값은 해당 위치에서 오른쪽으로 사다리가 존재한다고 생각하는 것이다. 따라서 인접한 열에 1 이 있지 않도록 가능한 모든 경우를 체크한다. 이렇게 생각하고 실제 탐색할때는 내 위치와 내 왼쪽 위치를 탐색한다. 1. 내 위치에 1이 있다. 오른쪽 사다리로 가라.2. 내 왼쪽에 1이 있다. 왼쪽 사다리로 가라 위와같이 경우의 수를 만들고 실제로 사다리를 타봐서 체크한다.. 12345678910111213141516171819202122232425262728293031323334..
출저 : https://www.acmicpc.net/problem/15683 "구현, 브루트 포스" 아래와 같이 구현했다. 삼성 기출 문제. 특정 위치에 있는 CCTV가 종류별로 있는데, 이를 4방향으로 돌려가며 사각지대 0의 개수를 최소로 줄이는 경우를 찾는 것이다. 아래 풀이에서는 각 CCTV 마다 한 방향만을 설정해주었는데, 회전 가능한 4방향에 대해서 다 정의해 준다면, 2번 CCTV 는 2회, 5번 CCTV는 1회로 횟수를 더욱 줄일 수 있다. 근데 나는 귀찮아서 그냥 4방향 다 돌렸따.... 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616..
출저 : https://programmers.co.kr/learn/courses/30/lessons/42888 "하라는대로~~~" 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 static final String str1= "님이 들어왔습니다.";static final String str2= "님이 나갔습니다."; public static String[] solution(String[] record) { HashMap map = new HashMap(); int size = 0; for(int i = 0 ; i
출저 : https://programmers.co.kr/learn/courses/30/lessons/17679?language=java "하라는대로~~~~" 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172static int[] dx = {0,0,1,1};static int[] dy = {0,1,0,1}; public static int solution(int m, int n, String[] board) { int answer = 0; char[][] map = new char[m][n]; boolean[][] ..
출저 : https://www.acmicpc.net/problem/14499 "구현하자." 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899import java.util.Scanner; class Main { static int N,M; static int x,y; static int K; static int[] dice = {0,0,0,0,0,0}; static int[][] map; static int[] dx = ..
출저 : https://www.acmicpc.net/problem/14888 "브루트포스" 다해보자~12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer; public class Main { static int N; static int num[]; static int op[] = new int[4]; static int max = Integer.MIN_VALUE; stati..
출저 : https://www.acmicpc.net/problem/14890 "시뮬레이션" 해당 문제는 다리를 놓을 수 있느냐 없느냐 를 판별하는 것이 핵심인 문제로 아래와 같이 경사로는 두 가지로 분류할수 있다. 내려가는 경사로와 올라가는 경사로가 둘다 비슷하지만 조금 다른 부분이 있다. 내려가는 경사로의 경우 경사로가 이전에 방문하지 않았던 칸으로 놓이기 때문에, 경사로 설치 여부 체크를 하지 않아도 된다. 하지만 올라가는 경사로의 경우 이전에 방문했던 칸에 경사로를 놓아야 하기 때문에 이전에 경사로를 놓아 지금 칸에 도착한 것인지 판별해야한다... 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647..
출저 : https://www.acmicpc.net/problem/15686 "Brute force/ 다해보자." 1. 마을의 전체 치킨집 에서 m개의 치킨집을 고른다2. 각 집에서 m개의 치킨 중에 가장 가까운 거리를 구하고 모든 집에서의 치킨 거리를 더한다.3. 치킨 거리의 값 중 최소값을 구한다. 고대로 해줬다. 재귀를 가지고 m개의 치킨 집을 고른 후 거리를 구해줬다. 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687import java.io.Buffer..
- Total
- Today
- Yesterday