목록삼성 (45)
삐까냥의 파도타기
문제 출처 : https://www.swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV4suNtaXFEDFAUf 아놔................ resultCpuNum = canCpuNum; 이 한줄을 추가하지 않아, 디버깅 시간 엄청 잡아먹었네요. 다행인건, 생각한 알고리즘의 문제는 아니었네요. 50개의 테스트 케이스 중에서 49개만 맞다고 나오길래, 예외 테스트 케이스만 생각하다보니,..... 왜케 실수를 하지;;;;;;;;;;; 2018년 4월 12일 - 다듬지 않은 코드 (소요시간 1시간 13분) import java.util.Scanner; public class Q1767 { static int mapSize, cp..
문제 출처 : https://www.acmicpc.net/workbook/view/1152 기출문제라고 하는 백준 사이트의 13개 문제를 풀어 본 후기를 작성하겠습니다. 1. 문제 유형 1번 조건일때는 A작업을, 2번 조건일 때는 B작업을 여러번 수행하는 문제가 많았어요. 따라서 대부분의 문제를 DFS로 풀 수 있었습니다. (물론 다른 방법으로 풀수 있어요.) 다른 글을 보면 DP를 공부하라고 하네요. 하지만 DP는 일주일 동안 공부를 한다고 해도 늘지 않고(글을 작성하는 시기는 시험 일주일 전) DP문제는 없었어요. 확실히 DFS가 중요한 것 같아요. 2. 난이도 해당 링크의 상단 문제들은 문제 이해도가 쉬운 반면에 구현하기가 까다로웠어요. 하단 문제들은 문제 이해도가 어렵고, 그러다 보니, 조건에 맞..
문제 출처 : https://www.acmicpc.net/problem/14502 이 문제를 처음 본 순간 막막했어요. 그런데, DFS라는 것을 알게 된 순간 쭉쭉 풀어나갔습니다. 오랜만에 플러딩 알고리즘도 사용하기도 했어요. 그런데 포문이 너무 많이 돌아간다는 문제가 있어서, 과연 이 방법이 맞나?라는 의구심을 가지고 코딩을 계속 해보니, 정답이 나오네요;;;; 최대 사이즈가 8이라서 가능한걸로 추측해요. 다차원 배열은 .clone()이 먹히지 않는것을 방금 알았어요;;;;;;;;;;;;; 여태 다차원에서 .clone()를 사용했는데;;;;;;;;;; 2018년 4월 9일 - 다듬지 않은 코드 (소요시간 48분) import java.util.Scanner; public class Q14502 { st..
문제 출처 : https://www.acmicpc.net/problem/13460 정답률이 22.63퍼인 이유를 알겠네요. 이 문제를 풀때, 구슬 도착 확인 방법을 입구 근처의 모든 블록들을 파악하는 방식으로 구현했습니다. 해당 방식은 소개된 테스트 케이스를 모두 통과하지만 예외 케이스가 있기 때문에 틀렸다고 나옵니다. 아래 케이스에서 결과가 1로 나오지만 실제 정답값은 2입니다.(입구로 가지 않았지만, 입구 근처에 있기 때문에) # # # ## R # ## . O ## # # # 따라서 현재 움직이는 방향에 따라 도착 구슬을 체크하게 구현했어요. 구슬 움직이기 구현은 12100.2048(EASY) 문제가 많은 도움 됐네요. 12100.2048(EASY) 선행학습을 안했다면 못풀거나, 소요시간이 2시간을..
문제 출처 : https://www.acmicpc.net/problem/12100 이번 문제는 테스트케이스가 적어서,문제 발견하기가 굉장히 어려웠어요.포기하려는 순간에 를 1회만 테스트로 돌리니, 해당 문제를 발견할 수 있었어요. 문제를 해결하기 전에 어느정도까지 생각했냐면비동기인 LinkedList로 구현을 해서 틀리는건가? 까지 생각했어요. 그래서 해당 코드는 어레이리스트로 구현했네요. 문제가 무엇이었냐면 moveBlock에서맵의 값을 queue에 삽입할때0의 값도 추가해서 제대로 된 덧셈 연산이 수행되지 못했습니다.따라서 0이 아닌 값만 추가하여 해당 문제를 해결했어요. 2018년 4월 8일 - 다듬지 않은 시험 코드 (소요시간 1시간 50분) import java.util.ArrayList;imp..
문제 출처 : https://www.acmicpc.net/problem/13458 이거 문제가 왜이리 쉽죠? 2018년 4월 8일 - 다듬지 않은 시험 코드 (소요시간 : 10분)import java.util.Scanner; public class Q13458 {public static void main(String[] args) {Scanner sc = new Scanner(System.in);int classNum = sc.nextInt();int[] classes = new int[classNum];for (int i = 0; i < classNum; i++) {classes[i] = sc.nextInt();}int first = sc.nextInt();int second = sc.nextInt()..
문제 출처 : https://www.acmicpc.net/problem/14500 이거는 그냥 노가다 문제같아요.누가 잘 참고 풀수 있느냐.그룹지어서 계산했습니다. 그룹 목록 (세로 * 가로)그룹 1 : 1*4그룹 2 : 4*1그룹 3 : 2*2그룹 4 : 3*2그룹 5 : 2*3 2018년 4월 8일 - 다듬지 않은 코드 (소요시간 44분) package samsung; import java.util.Scanner; public class Q14500 {static int[][] map;static int mapY, mapX;static long result = 0;public static void main(String[] args) {Scanner sc = new Scanner(System.in);m..
문제 출처 : https://www.acmicpc.net/problem/14499 엄청 쉬운 문제라 생각했는데, 계속 틀렸어요. 문제가 무엇이냐면, 입력을 받을때,주사위의 좌표를 X, Y로 받는다고 써있지만,실제로는 Y, X 순서로 받아옵니다. 여기에서만 10분 까먹은거 같아요.주어지는 예제에서는 Y=X이기 때문에정상 작동 하지만,테스트 예제에서는 Y != X인 경우가 있어서바로 틀렸다고 뜨네요. 2018년 4월 8일 - 다듬지 않은 시험 코드 (소요시간 45분) import java.util.Scanner; public class Q14499 { static Dice dice;static int[][] map;static int nowX, nowY;public static void main(String..
문제 출처 : https://www.acmicpc.net/problem/14501 생각한 의도대로 작동하지는 않았지만, 시험 결과를 위한 코드처음 의도 -> 일주일의 봉급 계산이 끝나고 나서 결과값을 비교 한 후 max 정하기.코드 -> 하루하루 계산할 때 마다 결과값을 비교하여 max 정하기. 2018년 4월 7일 - 다듬지 않은 코드 (소요시간 : 29분) import java.util.Scanner; public class Q14501 { static int result = 0, finalDay;static int[][] schedules;public static void main(String[] args) {Scanner sc = new Scanner(System.in);finalDay = sc...
문제 출처 : https://www.acmicpc.net/problem/14891 자잘한 실수 발생;이상하게 자바가 버벅거리고 넘나 느려서 미치겄네요. 2018년 4월 7일 - 다듬지 않은 코드 (소요시간 1시간 8분) public class Q14891 { static int[][] gear = new int[4][8];public static void main(String[] args) {Scanner sc = new Scanner(System.in);for (int i = 0; i < 4; i++) {String temp = sc.nextLine();int[] tempGear = new int[8];for (int j = 0; j < 8; j++) {char tempChar = temp.charAt..