Java 15

[프로그래머스] 같은 숫자는 싫어 - 자바

문제 설명 배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다. 단, 제거된 후 남은 수들을 반환할 때는 배열 arr의 원소들의 순서를 유지해야 합니다. 예를 들면, arr = [1, 1, 3, 3, 0, 1, 1] 이면 [1, 3, 0, 1] 을 return 합니다. arr = [4, 4, 4, 3, 3] 이면 [4, 3] 을 return 합니다. 배열 arr에서 연속적으로 나타나는 숫자는 제거하고 남은 수들을 return 하는 solution 함수를 완성해 주세요. 제한사항 배열 arr의 크기 : 1,000,000 이하의 자연수 배열 arr의 원소의 크기 : 0보다 크거나 ..

[코딩테스트] 2024.04.06

JAVA에서 Thread 구현 방법

JAVA에서 Thread 구현 방법 JAVA에서 Thread 구현 방법 자바에서 스레드를 구현하고 실행하는 주요 방법은 크게 두 가지입니다: Thread 클래스 확장(Extending the Thread class): 자바에서 제공하는 Thread 클래스를 상속받아서 스레드를 구현하는 방법입니다. run 메서드를 오버라이드하여 스레드에서 실행될 로직을 정의합니다. class MyThread extends Thread { @Override public void run() { // 스레드에서 실행될 코드 } } // 스레드 사용 MyThread t = new MyThread(); t.start(); Runnable 인터페이스 구현(Implementing the Runnable interface): Runna..

[F-Lab 페이백 모각코 50일차] 프로그래머스 콜라 문제 (Java)

학습목표 콜라 문제 - 프로그래머스 - 자바 TIL 콜라 문제 - 프로그래머스 - 자바 문제 설명 오래전 유행했던 콜라 문제가 있습니다. 콜라 문제의 지문은 다음과 같습니다. 정답은 아무에게도 말하지 마세요. 콜라 빈 병 2개를 가져다주면 콜라 1병을 주는 마트가 있다. 빈 병 20개를 가져다주면 몇 병을 받을 수 있는가? 단, 보유 중인 빈 병이 2개 미만이면, 콜라를 받을 수 없다. 문제를 풀던 상빈이는 콜라 문제의 완벽한 해답을 찾았습니다. 상빈이가 푼 방법은 아래 그림과 같습니다. 우선 콜라 빈 병 20병을 가져가서 10병을 받습니다. 받은 10병을 모두 마신 뒤, 가져가서 5병을 받습니다. 5병 중 4병을 모두 마신 뒤 가져가서 2병을 받고, 또 2병을 모두 마신 뒤 가져가서 1병을 받습니다. ..

[F-Lab 페이백 모각코 49일차] 프로그래머스 코딩테스트 푸드 파이트 대회 (Java)

학습목표 코테 푸드 파이트대회(프로그래머스) - Java TIL 코테 푸드 파이트대회(프로그래머스) 문제 설명 수웅이는 매달 주어진 음식을 빨리 먹는 푸드 파이트 대회를 개최합니다. 이 대회에서 선수들은 1대 1로 대결하며, 매 대결마다 음식의 종류와 양이 바뀝니다. 대결은 준비된 음식들을 일렬로 배치한 뒤, 한 선수는 제일 왼쪽에 있는 음식부터 오른쪽으로, 다른 선수는 제일 오른쪽에 있는 음식부터 왼쪽으로 순서대로 먹는 방식으로 진행됩니다. 중앙에는 물을 배치하고, 물을 먼저 먹는 선수가 승리하게 됩니다. 이때, 대회의 공정성을 위해 두 선수가 먹는 음식의 종류와 양이 같아야 하며, 음식을 먹는 순서도 같아야 합니다. 또한, 이번 대회부터는 칼로리가 낮은 음식을 먼저 먹을 수 있게 배치하여 선수들이 음..

[F-Lab 모각코 페이백 23일차] 팀코칭 질문 정리(인터뷰 준비, 개념 학습)

학습목표 팀코칭 질문 답변 TIL 개념 학습 시스템 캐시 (L1, L2, L3) 데몬 스레드와 유저 스레드 차이 Serializable 인터페이스 UDP 와 TCP의 차이 NI/O Try with resource 시스템 캐시에 대하여 설명해주세요. (L1, L2, L3) 캐시(cache)는 CPU와 주기억장치 사이에서 빠르게 데이터를 저장하고 가져오기 위한 중간 저장소입니다. CPU가 필요한 데이터를 찾을 때, 캐시에 먼저 접근하게 되는데, 이는 캐시가 주기억장치에 비해 훨씬 빠르게 접근할 수 있기 때문입니다. 필요한 데이터가 캐시에 있을 경우 (이를 캐시 히트라고 합니다), CPU는 매우 빠르게 해당 데이터를 가져올 수 있습니다. 그러나 필요한 데이터가 캐시에 없을 경우 (이를 캐시 미스라고 합니다),..