본문 바로가기

JAVA/Coding Test Study151

[Lv.1] 프로그래머스 - 최대공약수와 최소공배수 : Java 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 이해하기 기본 중의 기본인 최대공약수와 최대공배수.. 왠지 기억이 안 나서 구현을 제대로 하지 못했다. 이번 기회에 제대로 정리해둬야지...! 최대공약수를 구하는 알고리즘 중 하나인 유클리드 호제법을 사용하였다. 유클리드 호제법 - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. 유클리드 호제법(-互除法, Euclidean algorithm) 또는 유클리드 알고리즘은 2개의 자연수 또는 정식(整式)의 최대공약수를 구하는 알고리즘의 하나이다. 호제법이란 ko.wikipedia.org 처음에 식.. 2024. 4. 19.
[Lv.0] 프로그래머스 - 두 수의 합 : Java 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 이해하기 Lv.0 문제들을 쭉~ 풀어보고 있는데 자꾸 틀리는게 나온다. 이 문제는 이렇게 접근했었다. 첨에 문제 제대로 안 읽고 바로 Integer.parseInt 숫자가 큰가보네... 하고 Long.parseLong 앗 전에 BigInteger라는 걸 들어봤었는데? → 사용법을 몰라서 실패 참고한 블로그⬇️ [프로그래머스] Java 코딩테스트 연습 - 두 수의 합 [프로그래머스] Java 코딩테스트 연습 - 두 수의 합 문제 출처 https://school.programmers.co.kr/learn/cour.. 2024. 4. 16.
[Lv.0] 프로그래머스 - 코드 처리하기 : Java 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 이해하기 mode = 0으로 시작 "1"을 만나면 mode를 바꿈 0이었으면 1로 1이었으면 0으로 mode가 0일 때 code[idx]가 "1"이 아니면 idx가 짝수일 때만 ret의 맨 뒤에 code[idx] 추가 mode가 1일 때 code[idx]가 "1"이 아니면 idx가 홀수일 때만 ret의 맨 뒤에 code[idx] 추가 ret이 비었다면 "EMPTY" 리턴 쉬운 문제라고 생각했는데 의외로 고민했다. 내가 틀렸던 이유는 바로 "EMPTY"를 못 봤기 때문... 문제를 잘 읽자🥹 문제풀이 class.. 2024. 4. 16.
[Lv.0] 프로그래머스 - ad 제거하기 : Java 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 이해하기 다 풀어놓고 list를 String 배열로 바꾸는 stream식을 몰라서 틀렸다 ㅋㅋ... 이번 기회에 정리해둬야지 ㅜㅅㅜ 참고한 블로그⬇️ [Java/자바] List와 String(문자열, 배열)을 서로 변환하는 법 List ↔ String List를 String으로 간단히 변환 join() 메서드 활용 List list = new ArrayList(); String answer = String.join(",",list); String을 List로 변환 split() 메서드 활용 String s =.. 2024. 4. 16.
[Lv.2] 프로그래머스 - 가장 큰 수 : Java 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 이해하기 이 문제가 제일 어렵게 느껴졌다! sort 해야하는건 알겠는데 기준이 뭔지 파악하기가 어려웠다. 참고한 블로그⬇️ [프로그래머스] 가장 큰 수 - Java 코딩테스트 연습 - 가장 큰 수 0 또는 양의 정수가 주어졌을 때, 정수를 이어 붙여 만들 수 있는 가장 큰 수를 알아내 주세요. 예를 들어, 주어진 정수가 [6, 10, 2]라면 [6102, 6210, 1062, 1026, 2610, 2106]를 bellog.tistory.com Arrays.sort(arr, (o1, o2) -> (o2 + o1.. 2024. 4. 16.
[Lv.2] 프로그래머스 - 전화번호 목록 : Java 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 이해하기 처음에는 너무 쉽지 않나? 하고 막~ 풀었는데 효율성 빵점 맞았다. 첫 풀이는 이중 for문 돌리면서 자신이 아닌 다른 문자열들을 .startsWith()로 검사했다. 결과는 실패, 시간 초과 ㅜㅅㅜ 제한 사항을 보니 phone_book의 길이가 최대 1,000,000 이라 이중 for문을 돌리면 너무 오래 걸리게 된다. 참고한 블로그⬇️ [프로그래머스] 전화번호 목록 (해시 Lv. 2) - 자바 Java 0. 동일 유형 문제 [프로그래머스] 완주하지 못한 선수 (해시 Lv. 1) [프로그래머스] 전.. 2024. 4. 16.