항해99 16

99클럽 코테 스터디 16일차 TIL ✒️Intersection of Two Arrays

✅ 오늘의 학습 키워드HashSet을 이용한 중복 제거 🔍 오늘의 문제 분석↘️ 오늘의 문제 바로가기 ↘️ 두 정수 배열 nums1과 nums2가 주어진다두 배열에 모두 나타나는 정수 배열을 반환한다반환하는 정수 배열 요소는 중복되지 않도록 한다1 0 ✨ 오늘의 회고📌내가 적은 답안📌더보기class Solution { public int[] intersection(int[] nums1, int[] nums2) { HashSet set1 = new HashSet(); HashSet set2 = new HashSet(); for (int num : nums1) { set1.add(num); } ..

99클럽 코테 스터디 15일차 TIL ✒️학생 인기도 측정

✅ 오늘의 학습 키워드HashMap을 값 기준으로 재정렬하기Map.Entry 인터페이스 활용하기 🔍 오늘의 문제 분석↘️ 오늘의 문제 바로가기 ↘️ 학생들의 이름 n가 주어진다n 줄까지 학생의 이름이 공백으로 구분된 문자열이 주어진다인기도가 높은 학생부터 낮은 학생 순으로 출력인기도가 같은 경우 학생 이름 기준으로 오름차순으로 출력 ✨ 오늘의 회고📌내가 적은 답안📌더보기import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.ArrayList;import java.util.Collections;import java.util.Comparator;import java.u..

99클럽 코테 스터디 14일차 TIL ✒️브실이의 입시전략

✅ 오늘의 학습 키워드HashMap과 ArrayList를 활용하여 중복 제거 및 정렬하기정렬한 리스트에서 최솟값과 최댓값 구하기🔍 오늘의 문제 분석↘️ 오늘의 문제 바로가기 ↘️ 브실이는 N개의 과목을 수강함브실대학은 M개 과목의 점수를 요구브실대학은 M개 과목 중 K개의 과목만 공개함공개한 과목 K개와 공개하지 않은 과목 (M-K) 개 점수의 최솟값과 최댓값을 출력 공개된 과목과 비공개된 과목은 브실이가 수강한 과목에 모두 포함 과목은 중복되지 않는다오늘의 문제는 HashMap과 ArrayList를 활용해서 Key와 Value 형식으로 값을 저장하고 정렬을 통해서 최댓값과 최솟값을 계산하는 문제였다.✨ 오늘의 회고📌내가 적은 답안📌더보기import java.io.BufferedReader;imp..

99클럽 코테 스터디 13일차 TIL ✒️단어 정렬

✅ 오늘의 학습 키워드Collections 클래스Comparator 인터페이스와 compare 메서드 오버라이드문자열 정렬 (길이 및 사전순)TreeSet을 이용한 중복 제거🔍 오늘의 문제 분석↘️ 오늘의 문제 바로가기 ↘️ 문자열 n개를 1) 문자열 길이가 짧은 순, 2) 길이가 같다면 사전 순으로 정렬 단어의 개수 N은 1~20,000, 단어 길이는 50자 이하중복된 단어는 하나만 남기고 제거✨ 오늘의 회고📌내가 적은 답안📌더보기BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int n = Integer.parseInt(br.readLine()); Set result = new TreeSet(); ..

99클럽 코테 스터디 12일차 TIL ✒️임스와 함께하는 미니게임

✅ 오늘의 학습 키워드StringTokenizer 활용하기 HashSet을 활용한 중복 제거하기🔍 오늘의 문제 분석↘️ 오늘의 문제 바로가기 ↘️ 게임 종류는 세가지(윷놀이, 같은 그림 찾기, 원카드) 존재각 게임 별 필요 인원 (2명, 3명, 4명)한 번 플레이한 사람과는 다시 플레이하지 않음✨ 오늘의 회고📌내가 적은 답안📌더보기import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.HashSet;import java.util.Set;import java.util.StringTokenizer;public class Main { public static void ..

99클럽 코테 스터디 11일차 TIL ✒️Repeated DNA Sequences

✅ 오늘의 학습 키워드해시 테이블해시 SetSubstring🔍 오늘의 문제 분석↘️ 오늘의 문제 바로가기 ↘️ 문자열 s의 길이는 1 이상 100,000 이하이다주어진 문자열에서 길이가 10이 되는 부분 문자열을 모두 확인한다부분 문자열이 반복적으로 등장하는 횟수를 확인한다등장 횟수가 2 이상이면 ArrayList로 반환한다 오늘의 문제는 문자열 s가 주어졌을 때, 이 문자열 안에서 10글자 길이를 가지는 부분 문자열 중 두 번 이상 나타난 문자열을 출력하는 문제이다. 처음에는 10개의 문자열을 key값으로 저장하고 key값의 등장 횟수를 value값으로 저장하는 HashMap을 떠올렸다. 하지만 등장 횟수가 두 번 이상만 돼도 조건에 충족하기 때문에 조회 후 연산하는 과정을 생략하기로 했다.✨ 오늘의..

99클럽 코테 스터디 10일차 TIL ✒️ 평행선

✅ 오늘의 학습 키워드HashMap 활용해서 카운트하기🔍 오늘의 문제 분석↘️ 오늘의 문제 바로가기 ↘️ 주어진 x, y 좌표들 중에서 같은 x 축과 y 축을 공유하는 점의 개수를 구한다(1, 1) (1, 2) 은 x축으로 평행하다✨ 오늘의 회고📌내가 적은 답안📌더보기import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.HashMap;import java.util.StringTokenizer;public class Main { public static void main (String[] args) throws IOException { HashMap X = ..

99클럽 코테 스터디 9일차 TIL ✒️체이닝 방식으로 HashMap 구현하기

✅ 오늘의 학습 키워드체이닝이란HashMap 직접 구현하기🔍 오늘의 문제 분석↘️ 오늘의 문제 바로가기 ↘️ 오늘의 문제는 HashMap의 주요 메서드인 put, get, remove를 HashMap 클래스를 쓰지 않고 구현하는 문제이다. 실제 자바에서 HashMap가 구현되는 방식으로 구현해보고 싶은 욕심이 생겨서 (내부 구조를 배우고 싶달까..🤔) 동영상을 참고해서 풀어 보았다. ✨ 오늘의 회고📌내가 적은 답안📌더보기class Node { int key; int val; Node next; Node (int key, int val) { this.key = key; this.val = val; this.next = null; }} ..

99클럽 코테 스터디 8일차 TIL ✒️문자 개수 세기

✅ 오늘의 학습 키워드int[] 배열 사용하기🔍 오늘의 문제 분석↘️ 오늘의 문제 바로가기 ↘️ 문자열 num 이 주어진다문자열의 인덱스가 문자열 안에 등장하는 횟수를 카운트한다 각 인덱스의 실제 숫자 값과 횟수가 일치하면 true를 아니면 false를 반환한다 ✨ 오늘의 회고📌내가 적은 답안📌더보기class Solution { public boolean digitCount(String num) { int cnt; for (int i = 0; i 처음에는 위 코드처럼 이중 반복문을 사용해서 각 숫자의 등장 횟수를 일일이 세는 방식으로 풀었다. 그리고 이중 반복문을 사용하고 싶지 않아서 int[] 배열을 사용해 보았다. 각 자릿수의 숫자는 0~9까지만 등장하는 것을 활용해서 배..

99클럽 코테 스터디 7일차 TIL ✒️ 좋은 단어 (스택 활용)

✅ 오늘의 학습 키워드Stack 활용하기추가, 삭제, 조회 메서드별 비교🔍 오늘의 문제 분석↘️ 오늘의 문제 바로가기 ↘️ 같은 문자끼리 짝 지어서 교차하지 않는 문자열의 개수를 반환한다 단어의 길이는 2와 100,000사이이다이 문제를 보고 우선 문자를 짝 짓는 방법에 대해서 생각해봤다. 짝을 지을 때 교차하지 않으려면 2가지 방법이 존재했다. 첫번째는 왼쪽부터 오른쪽 방향으로 순차적으로 같은 문자가 나오는 패턴이었다. ( a a b b a a ) 두번째는 중간에 위치한 문자부터 양 끝으로 연결되는 패턴이었다. ( a b a b b a b a ) ✨ 오늘의 회고📌내가 적은 답안📌더보기import java.io.BufferedReader;import java.io.IOException;import ..