삭제 intelliJ, vscode, 안드로이드스튜디오, 오라클, 파이썬, MySQL, 마리아디비, 포스트맨, 소스트리, 워크벤치, 노드제이에스 다 죽어톰캣, 웨카, 슬랙, draw.io, notion죽엇!!!!! 다신보지말자 개발 개인공부 2025.02.01
객체지향언어에서의 다형성 써먹는법 class Berry{ String str; void meth(){ func(); } void func(){ System.out.println(str); }}class Apple extends Berry { String str; void func(){ str = "Apple"; super.str = "Berry"; super.func(); System.out.println(str); }}public class Main { public static void main(String[] args) { Berry A = new Apple(); A.meth(); }}전에 정처기 실기 대비 공부를 하다.. Java 개인공부 2024.12.09
[JAVA] 백준10989: 수 정렬하기 3(시간복잡도 고려) 엄청 쉬운 문제이다.개발자도 아닌데다가 비전공자인 내가 봐도 쉬운 문제이다.입력받은 N번 만큼 반복문 돌려서 배열에 집어넣고, 배열을 오름차순으로 정렬해서 출력하면 된다.sort() 써서 풀면 개쉽잖아. ......라고 생각했었는데, 이건 망할 시간복잡도 고려해야하는 문제였다. 시간 제한 5초라는건 개뻥이었고 사실 3초다.그럼 걍 3초라고 정직하게 써놓던가이씨 할튼 개발자라는놈들은 콧대만 졸라 높아가지고 찐따 같은 녀석들이 말이야 남들 통수나 치고 컴터 앞에 앉아서 애니나 볼줄알지 팍씨 sort()를 사용해서 푼다면, 아주 쉽게 코드를 짤 수 있지만, 무조건BufferedReader와 BufferedWriter를 사용해야한다. 그래야 아슬아슬하게 시간을 맞출 수 있음.저기 시간 조건에는 5초라고 써있지만.. 코딩테스트/알고리즘..을 하고 싶었던 2024.12.02
[JAVA] 백준2501: 약수 구하기 간만에 블로그 업데이트를 하기 위해 개쉬운 문제를 하나 들고 왔다.기존에 풀었던 문제들과 비교해도 난이도가 꽤 쉬운편에 속하는데, 왜인지 정답비율은 50% 정도 되는 문제이다.나처럼 1년 넘게 고작 개발자 따위 취업도 못하고 있는 허섭 쓰레기 백수도 풀었으니 모두가 풀 수 있다.못 풀겠다면 나보다 못한 인간이니 그만 이승의 괴로움을 멈추는 것을 추천한다.나도 조만간 뒤따라 갈테니 외롭진 않을 것이다.그니까 못풀면 나가죽으란 뜻이다 그대들을 부양해야할 미래의 우리 후손들을 위해. 풀이시간복잡도 문제에 적응하기 위한 BufferedReader랑입력을 하나씩 받기 위한 StringTokenizer를 사용해서 정수 N과 K를 입력받는다. 1부터 N 까지 숫자를 하나씩 확인하면서 N을 나누어 떨어지게 하는 숫자.. 코딩테스트/알고리즘..을 하고 싶었던 2024.11.25
[JAVA] 백준9935: 문자열 폭발(폭발) 문자열 두 개를 입력 받아서, 원래 문자열에서 폭발 문자열이 포함되어 있으면, 폭발 문자열 만큼을 날려달라는 요구인 것 같다. 처음에는 replace() 를 사용해서 풀어보려고 했다.contains()를 사용해서, 원래 문자열이 폭발 문자열이 포함되어 있는지 확인하고,해당 부분을 ""으로 replace하려던 훌륭한 계획이 있었다는 말씀... replace()를 이용한 풀이(틀렸습니다!)public class Main { public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWri.. 코딩테스트/알고리즘..을 하고 싶었던 2024.11.16
[JAVA] 백준10828: 스택 스택에 대해 이해하고 있다면,Stack의 메소드들을 만들어보는 느낌이다. 이 문제의 제한시간이 0.5초인 관계로, 간편한 Scanner 대신 오랜만에 BufferedReader를 이용해 입력하고 BufferedWriter를 이용해서 출력하는 방식으로 풀었다. 풀다가 더 그럴싸한 방법이 생각나서, 풀이는 두 가지 이다. Stack 객체를 이용해서 풀기import java.io.*;import java.util.Scanner;import java.util.Stack;public class Main { public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new Input.. 코딩테스트/알고리즘..을 하고 싶었던 2024.11.13
[JAVA] 백준10773: 제로 숫자를 넣다가, 0이 나오면 가장 최근의 수를 지우고, 또 넣다가 또 0이 나오면 가장 최근의 수를 지운 다음,남아있는 숫자들의 합을 구하는 문제이다. 지금 이 알고리즘은 자료구조에 관련한 문제인지라,Stack 냄새가 폴폴 났다.Stack은 후입선출(LIFO) 방식의 자료구조니까, 문제 풀이에 적합하다. 배열로 풀기문제라면 내가 Stack을 사용해본적이 없기 때문에, 처음에는 그냥 배열을 만들어서 풀으려고 했었다.배열로 풀어도 된다.가장 최근의 숫자에 해당하는 인덱스를 변수로 만들어준다.이때 이 변수는 -1로 초기화하고, 입력이 0이 나올때, 그리고 변수가 -1 이상일 때 감소시켜준다.public class Main { public static void main(String[] args) { .. 코딩테스트/알고리즘..을 하고 싶었던 2024.11.12
[JAVA] 백준2588: 곱셈 이 문제의 핵심은, 두번째 주어지는 정수를 분리해낼 수 있느냐...? 하는 것이다.아 여러가지 방법이 있을 것 같지만 나는 일단 int로 정수를 받으면 아주 귀찮아질 것 같다는 확신이 강하게 들었다.그래서 아예 두번째 수는 String으로 받기로 했다.그리고 그 문자열을 charAt()을 이용해서 잘라낸 다음 계산하면 아주 간단하게 풀 수 있다. import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int a = sc.nextInt(); String b = sc.next(); Syste.. 코딩테스트/알고리즘..을 하고 싶었던 2024.11.04
[JAVA] 백준2566: 최댓값 2차원 배열을 이해하고 있으면 꽤 쉬운 문제이다.쉬운데 여기다가 왜 업로드 하느냐, 나는 헷갈렸기 때문...! ㅋㅋ 풀이public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int[][] numbers = new int[9][9]; int max = 0; int row = 1; int col = 1; for (int i = 0; i 2중 for문을 이용해서 2차원 배열인 numbers 배열을 일단 채워준다. 그 전에 임시 변수 max를 하나 만들어 0으로 초기화 해주었고,몇 행, 몇 열에 최댓값이 위치해.. 코딩테스트/알고리즘..을 하고 싶었던 2024.11.03
[JAVA] 백준1152: 단어의 개수 이 문제는...입력 받은 문자열을 split()메소드를 이용해서 공백을 기준으로 잘라서,배열에 넣고 그 배열 갯수를 세서 아주 간단하게 풀으려고 했었다.그러려고 했는데... 그렇게 간단하게 푸는 문제가 아니었음ㅎ '문자열은 공백으로 시작하거나 끝날 수 있다' 이 문장이 핵심이었다. 공백만을 기준으로 잘라서 개수를 세면 안된다는 것이지. 이럴 때 쓰라고 StringTokenizer 라는 클래스를 쓸 수 있다고 합니다. import java.util.Scanner;import java.util.StringTokenizer;public class Main { public static void main(String[] args){ Scanner sc = new Scanner(System.in).. 코딩테스트/알고리즘..을 하고 싶었던 2024.10.31