본문 바로가기

전체 글

(140)
99클럽 코테 스터디 4일차 TIL + LeetCode 232 (Implement Queue using Stacks, java) 오늘의 학습 키워드큐스택문제 탐색하기문제 문제 풀이 설계하기이 문제를 풀기 위해서는 큐와 스택의 개념을 이해하고 있어야합니다.  Queue 란?선입 선출을 기반으로 동작하는 자료 구조 이고 즉, 먼저 들어간 원소가 제일 먼저 나오는 구조입니다. Stack 이란?후입 선출을 기반으로 동작하는 자료 구조 이며 즉, 나중에 들어간 원소가 제일 먼저 나오는 구조입니다. stack 구조체를 활용해서 선입선출을 하는 것 처럼 구현하여 문제를 풀어주면 됩니다. stack 구조체 2개를 통해서 입력을 받는 stack, 출력을 하는 stack의 역할로 나뉘어서 선언해줍니다.push 메소드가 호출되면 입력을 받는 stack에 원소가 쌓이게 로직을 작성하면 되고pop 메소드 또는 peek 메소드가 호출되면 입력을 받는 st..
99클럽 코테 스터디 3일차 TIL + [백준] 31458 : !!초콜릿 중독 주의!! 오늘의 학습 키워드문자열 문제 탐색하기문제 문제 풀이 설계하기0! = 1, 1! = 1, !0 = 1, !1 = 0문제에서 주어진 조건을 통해 모두 문자열이라고 생각해보면 규칙에 따라서 왼쪽의 값을 오른쪽으로 변경해가며 최종적으로 문자열의 길이가 1이 될때까지 반복해주면 되는 문제입니다. 조건은 팩토리얼 형태를 먼저 계산한다고 되어있으니 0!, 1! 를 먼저 1로 변경해주게끔 로직을 작성하면 될 것 같습니다. 코드import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;public class Main { public static void main(String[] args) throws IOExce..
99클럽 코테 스터디 2일차 TIL + [백준] 10820 : 문자열 분석 오늘의 학습 키워드문자열비교입력 방식 문제 탐색하기문제 문제 풀이 설계하기입력받은 문자열을 단어 하나씩 조건에 맞는지 비교하면 되는 문제입니다. 단어가 알파벳 소문자, 대문자, 숫자, 공백 중 하나임을 조건을 통해서 확인하고 각 조건일때 카운트를 증가시키는 로직을 구현해서 최종적으로 입력받은 문자열에 대해 소문자, 대문자, 숫자, 공백의 개수를 공백으로 구분하여 출력해주면 됩니다. 이때 문자열의 갯수인 N이 주어지지 않는 다는 것도 유의해야하는데 String input;while((input = br.readLine()) != null){ 위 코드 처럼 작성하게되면 입력이 종료되었을때 이 while-loop가 종료된다고 합니다. 코드import java.io.BufferedReader;import jav..
99클럽 코테 스터디 1일차 TIL + [백준] 1032 : 명령 프롬프트 오늘의 학습 키워드문자열구현비교 문제 탐색하기문제 문제 풀이 설계하기문제를 보면 주어지는 파일 이름의 길이는 일정하고파일이름의 한글자 한글자를 비교해서 특정 위치의 글자가 서로 다르다면 '?'로 치환해서 보여주면 되는 문제입니다.  코드import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.ArrayList;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReade..
[Mac] java 설치하기 open jdk 21 맥에 java jdk 21 버전을 설치해야 할 기회가 생겼습니다. homebrew를 통해서 설치하고 현재 설치되어있는 여러 버전의 jdk를 명령어를 통해서 변경해가면서 사용하는 방법에 대해 기술해보도록 하겠습니다. 1. homebrew를 통해 open jdk 21 버전 설치설치할 수 있는 jdk 버전 확인하기brew search jdk openjdk@21 설치하기brew install openjdk@21  2. 심볼링 링크로 openjdk 를 macOS의 Java Virtual Machine 디렉토리에서 사용할 수 있도록 설정openjdk21 버전이 설치되는 경로는 /opt/homebrew/opt/ 하위에서 확인할 수 있습니다. 그리고 macOS의 java virtual machine 경로는 /Libra..
[TIL] 99클럽 코테 스터디 35일차 TIL + 백준 17825 주사위 윷놀이 문제 풀이 문제 풀이import java.io.*;import java.util.ArrayList;import java.util.Arrays;import java.util.StringTokenizer;public class Main { static StringTokenizer st; static int N; static int answer; static int[] Dice = new int[10+1]; static int[] Order = new int[10+1]; static ArrayList OrderArr = new ArrayList(); static Node root = new Node(); static Node[] Mal = new Node[4+1]..
[TIL] 99클럽 코테 스터디 34일차 TIL + 프로그래머스 개인정보 수집 유효기간 문제 풀이 문제 풀이import java.util.*;class Solution { public int[] solution(String today, String[] terms, String[] privacies) { List list = new ArrayList(); HashMap map = new HashMap(); for (int i = 0; i = type) { list.add(i+1); } } return list.stream().filter(i -> i != null).mapToInt(i -> i).toArray(); }}
[TIL] 99클럽 코테 스터디 33일차 TIL + 프로그래머스 신규 아이디 추천 문제 풀이  문제 풀이class Solution { public String solution(String new_id) { String answer = new_id.toLowerCase(); answer = answer.replaceAll("[^a-z0-9-_.]", ""); while (answer.contains("..")) { answer = answer.replace("..", "."); } if (answer.charAt(0) == '.') { answer = answer.substring(1); } if (answer.length() ..