목록백준 (48)
삐까냥의 파도타기
https://www.acmicpc.net/problem/15686 음..음.. 다듬지 않은 코드 import java.util.ArrayList;import java.util.Scanner; public class Q15686 {static int[][] map;static int mapSize, chickenNum, result = -1;static boolean[] isVisit;static ArrayList chickenList = new ArrayList();public static void main(String[] args) {Scanner sc = new Scanner(System.in);mapSize = sc.nextInt();chickenNum = sc.nextInt();map = new..
https://www.acmicpc.net/problem/15685 어렵다고 느껴졌네요. 특히 90도 회전하는 부분이요. 정답률 54%라는게 안믿겨질정도로... 공간 효율성 때문에 스택으로 처리하면 되겠지만, 배열을 사용한 시험용 코드이기 때문에 비효율적입니다. 2018년 5월 23일 - 다듬지 않은 코드 import java.util.Scanner; public class Q15685 {static int size = 101;static boolean[][] resultMap = new boolean[size][size];static int finalGeneration;public static void main(String[] args) {Scanner sc = new Scanner(System.in)..
문제 출처 : https://www.acmicpc.net/problem/2638 코딩 퀴즈만 너무해서 그런지, 힘들어요.머리도 안돌아가네요. 2018년 4월 11일 - 약간 다듬은 코드 (소요시간 43분) import java.util.Scanner; public class Q2638 { static int ySize, xSize;static int[][] map, mapClone;static boolean isContinue = true;static int[]moveY = {-1, 0, 1, 0},moveX = {0, 1, 0, -1};public static void main(String[] args) {Scanner sc = new Scanner(System.in);ySize = sc.nextInt..
문제 출처 : https://www.acmicpc.net/problem/1600 해당 문제를 푸는데 어려움이 있었습니다. 초기 코드를 1시간 정도 작성하고, 제출한 결과 정답이 중간정도 맞다가 틀렸습니다. 이후 30분 동안, 알고리즘을 생각했습니다. 아무리 생각해도, 알고리즘(로직)은 맞는데, 정답은 중간정도 맞다가 틀렸다고 나왔네요. 코드를 계속 수정하고, 수정하고 수정했는데도 틀렸습니다. 이 문제는 다음날(4월 11일) 문제를 다시 읽으며 해결할 수 있었어요. 다른 문제와는 다르게, 입력에서 map의 "가로길이"부터 주어지는것을 발견했습니다. 으.............................. 시험용 BFS공부 중이기 때문에, 클린 코딩보다는 하드 코딩 중인데, 덕분에 코드를 어느정도 다듬었네요..
문제 출처 : https://www.acmicpc.net/problem/1938 14503.로봇청소기와 13460.구슬탈출2 의 문제를 합한 느낌이네요. 이동시키지만, 세개의 나무가 이동해야 된다는 점에서 까다로웠어요. 올림피아드 고등부 2번 문제!!!.............. BFS로 풀었습니다. 대나무의 center 좌표와, 현재 가로, 세로상태, 카운트를 가지는 객체를 만들어줬고, 상, 하, 좌, 우, 회전이 가능할 경우(공간이 있을 경우) 해당 동작을 수행하도록 구현했어요. 처음에는 처음에는 대나무 세좌표를 모드 저장했지만, 객체 복사 문제로, 센터 좌표값만 저장하도록 했습니다. 불가능 할 경우에는 0이 나오도록 구현을 해야해요. 2018년 4월 10일 - 다듬지 않은 코드 (소요시간 : 1시간 ..
문제 출처 : https://www.acmicpc.net/problem/2468 무려 초등부 문제!! 힌트를 주자면, 모든 영역의 높이가 동일할 경우도 생각해야 하네요. 2018년 4월 10일 - 다듬지 않은 코드 (소요시간 38분) import java.util.Scanner; public class Q2468 { static int[][] map, newMap;static int size;static int result = 1;public static void main(String[] args) {Scanner sc = new Scanner(System.in);size = sc.nextInt();map = new int[size][size];int min = 0, max = 0;for (int i =..
문제 출처 : https://www.acmicpc.net/problem/11403 DFS 입니다. dsf에 익숙치 않아 아직은 어버버 거리네요. import java.util.Scanner; public class Q11403 { static int[][] a;static int num;public static void main(String[] args) {Scanner sc = new Scanner(System.in);num = sc.nextInt();a = new int[num][num];for ( int i = 0; i < num; i++ ) {for ( int j = 0; j < num; j++ ) {a[i][j] = sc.nextInt();}}for ( int y = 0; y < num; y++..
문제 출처 : https://www.acmicpc.net/problem/1697 BFS입니다. DFS로는 답이 안나오네요. import java.util.LinkedList;import java.util.Queue;import java.util.Scanner; public class Q1697_2 { public static void main(String[] args) {Scanner sc = new Scanner(System.in);int start = sc.nextInt();int goal = sc.nextInt();if ( start >= goal ) {//도착 장소가 더 작으면 빼기밖에 못하니 바로 계산System.out.println(start-goal);return;}int max = goal..
문제 출처 : https://www.acmicpc.net/problem/1260 기본 깊이우선 탐색 구현과 너비우선 탐색 구현입니다. 처음 구현하면서 학습한 블로그 주소 남깁니다. -> http://mygumi.tistory.com/102 import java.util.LinkedList;import java.util.Queue;import java.util.Scanner; public class Q1260 { public static void main(String[] args) {Scanner sc = new Scanner(System.in);int N = sc.nextInt();int M = sc.nextInt();int V = sc.nextInt();int[][] A = new int[N][N];f..
문제 출처 : https://www.acmicpc.net/problem/9996 import java.util.Scanner; public class Q9996 { static String[] search;static boolean same;public static void main(String[] args) {Scanner sc = new Scanner(System.in);int num = sc.nextInt();search = sc.next().split("\\*");for ( int i = 0; i < num; i++ ) {System.out.println(split(sc.next()));}}public static String split(String input) {if ( search[0].len..