본문 바로가기

Java67

백준 [자바 java] 2573 : 빙산 정말정말정말 오랜만에 알고리즘 문제를 풀었다. 감이 많이 줄어든 것 같다. 앞으로 좀 가끔이라도 풀어야겠다. 문제https://www.acmicpc.net/problem/2573 해설이 문제는 크게 두가지 문제가 있다.1년뒤 빙하의 배열을 만들기빙하의 덩어리 수를 체크하기빙하 덩어리 확인하기 static class xy{ int x; int y; xy(int x,int y){ this.x = x; this.y = y; } }우선 x,y 좌표를 스택에 저장하기 위해서 클래스를 하나 만들었다.  int[] dx = {0,1,0,-1}; int[] dy = {1,0,-1,0};또한 dx, dy 테크닉을 사용하기 위해서 위와 같은 배열을 만들었다. Stack .. 2024. 11. 15.
[교육일지] 자바 기초교육 회고 교육 목표자바 기초교육은 내가 교육부장이 된 후 처음으로 하는 교육이었다. 그만큼 정말 열심히 준비하였다! 내 교육 목표는 시간을 내서 내 교육을 들으러 온 모든 학생들에게 확실하게 얻어가는 것이 있도록 하는 것이었다. 그러기 위해서 가장 중요한 것은 난이도조절이라고 생각했다. 개발자 컨퍼런스 등에서 내 수준에 비해 너무 어려운 수업을 들으면 집중력이 떨어져 나중에 기억나는 내용이 전혀 없었던 적이 있었기 때문이다.그래서 나는 코딩을 처음 시작했을 때 어땠는지부터 떠올렸다. 나는 선생님께 1대1로 배웠음에도 이해하기 어려운 부분이 많았던 것 같다. 입출력 조차도 많이 헷갈렸던 과거를 생각하면 정말 하나하나 천천히 가르쳐야겠다고 생각했다.  교육 자료자료 만드는 것은 생각보다 매우 오래걸렸다. 만들다보니 .. 2024. 9. 17.
[나머지공부] 테스트코드 작성법 카카오테크캠퍼스를 하다보니까 테스트코드의 중요성을 알게 되었다.근데 나는 남이 짜준 테스트코드를 돌리는 것 이외에는 딱히 해본 적이 없어서 이 부분을 구현하는데 힘들었다.그리고 테스트코드를 짜는 방법을 확실하게 몰라서 더 부담을 느끼는 것 같아서 이번에 쭉 정리를 해보려고 한다. 테스트코드를 작성하는 이유디버깅 비용 절감코드변경에 대한 불안감 해소더 나은 자료좋은 코드는 테스트하기 쉽다.테스트 자동화@SpringBootTest : 테스트에 필요한 핵심 기능 라이브러리@Junit : java에서 독립된 단위 테스트를 지원해주는 프레임워크 @Test 어노테이션마다 독립적으로 테스트가 진행된다. 단위테스트 VS 통합테스트 단위테스트는 시간과 비용면에서 좋고, test코드 자체가 하나의 문서가 되지만, 가짜객체.. 2024. 7. 21.
백준 [자바 java] 공유기 설치 https://www.acmicpc.net/problem/2110 2110번: 공유기 설치 첫째 줄에 집의 개수 N (2 ≤ N ≤ 200,000)과 공유기의 개수 C (2 ≤ C ≤ N)이 하나 이상의 빈 칸을 사이에 두고 주어진다. 둘째 줄부터 N개의 줄에는 집의 좌표를 나타내는 xi (0 ≤ xi ≤ 1,000,000,000)가 www.acmicpc.net 오랜만에 백준이다! 코드트리를 통해서 개념을 어느정도 익혔으니 실전에 적용해보는 연습을 슬슬 해보려고 한다. 이 문제는 내가 5개월 전에 시도했다가 못풀었던 문제이다. 집의 위치와 공유기의 수가 주어지고, 이를 적절하게 배치해서 공유기가 설치된 집 사이의 가장 가까운 거리가 최대가 되도록 해야한다. 이 문제는 이진탐색으로 풀었고, lowerBou.. 2023. 9. 14.
에러해결방법[java] comparator과 int int배열에 있는 수들을 특정한 기준으로 정렬하기 위해 costom comparator을 만들었는데 아래와 같은 오류가 발생하였다. Main.java:48: error: no suitable method found for sort(int[],) Arrays.sort(arr, new Comparator(){ ^ method Arrays.sort(T#1[],Comparator 2023. 9. 14.
코드트리 [자바 java] 회의실 준비 구현 https://www.codetree.ai/missions/8/problems/implement-scheduling-meeting-room?&utm_source=clipboard&utm_medium=text 코드트리 | 코딩테스트 준비를 위한 알고리즘 정석 국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요. www.codetree.ai 회의가 시작하는 시간과 끝나는 시간들이 주어졌을 때, 하나의 회의실에서 열릴 수 있는 회의 수의 최댓값을 구하는 문제가 있다고 하자. 이렇게 주어졌을 때, 그리디로 풀 수 있는 세가지 방법이 있다. 1. 시작시간을 기준으로 오름차순 --> 더 늦게 시작하지만 일찍 끝나는 회의가 간과된다. 2. 회의시.. 2023. 9. 13.