목록프로그래머스 (49)
Hayden's Archive
알고리즘 문제 출처 : programmers.co.kr/learn/courses/30/lessons/42586 코딩테스트 연습 - 기능개발 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 programmers.co.kr 내가 작성한 코드 import java.util.ArrayList; import java.util.LinkedList; import java.util.List; import java.util.Queue; public class Solution { public int[] solution(int[] progresses, int[] speeds) { ..
알고리즘 문제 출처 : programmers.co.kr/learn/courses/30/lessons/42577 코딩테스트 연습 - 전화번호 목록 전화번호부에 적힌 전화번호 중, 한 번호가 다른 번호의 접두어인 경우가 있는지 확인하려 합니다. 전화번호가 다음과 같을 경우, 구조대 전화번호는 영석이의 전화번호의 접두사입니다. 구조 programmers.co.kr 내가 작성한 코드 처음에 작성했던 코드인데... public class Solution { public boolean solution(String[] phone_book) { boolean answer = true; for(int i=0; i
알고리즘 문제 출처 : programmers.co.kr/learn/courses/30/lessons/42578 코딩테스트 연습 - 위장 programmers.co.kr 내가 작성한 코드 HashMap을 이용해서 각 key(의상 종류)에 따른 value(의상 개수)를 담는다. 그 뒤 HashMap에 들어간 모든 값들을 향상된 for문에서 뽑아내는데, (특정 의상 종류의 의상 개수 + 그 의상 종류를 아예 안 입는 선택지 1개)를 모두 곱하고 모든 의상을 입지 않는 1가지 경우의 수를 빼면 정답을 구할 수 있다. import java.util.HashMap; import java.util.Map; public class Solution { public int solution(String[][] clothes..
알고리즘 문제 출처 : programmers.co.kr/learn/courses/30/lessons/72410 코딩테스트 연습 - 신규 아이디 추천 카카오에 입사한 신입 개발자 네오는 카카오계정개발팀에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. 네오에게 주어진 첫 업무는 새로 가 programmers.co.kr 내가 작성한 코드 StringIndexOutOfBoundsException 가 터져서 코드를 다시 확인해봤는데 .이나 @와 같은 아이디가 올 경우, 맨앞이나 맨뒤에 오는 .을 제거하는 부분에서 에러가 터졌다. 이 부분에 조건을 추가해서 예외가 터지지 않도록 코드를 수정했다. 이것으로 현재까지 올라온 프로그래머스 1단계 연습문제는 모두 끝~! publ..
알고리즘 문제 출처 : programmers.co.kr/learn/courses/30/lessons/68935 코딩테스트 연습 - 3진법 뒤집기 자연수 n이 매개변수로 주어집니다. n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수를 return 하도록 solution 함수를 완성해주세요. 제한사항 n은 1 이상 100,000,000 이하인 자연수 programmers.co.kr 내가 작성한 코드 public class Solution { private String numStr = ""; public int solution(int n) { int answer = 0; boolean isNotZero = false; toTernary(n); for(int i=0; i= 0; i--) ..
알고리즘 문제 출처 : programmers.co.kr/learn/courses/30/lessons/67256 코딩테스트 연습 - 키패드 누르기 [1, 3, 4, 5, 8, 2, 1, 4, 5, 9, 5] "right" "LRLLLRLLRRL" [7, 0, 8, 2, 8, 3, 1, 5, 7, 6, 2] "left" "LRLLRRLLLRR" [1, 2, 3, 4, 5, 6, 7, 8, 9, 0] "right" "LLRLLRLLRL" programmers.co.kr 내가 작성한 코드 public class Solution { private String answer = ""; private String leftNum = "*"; private String rightNum = "#"; public String..
알고리즘 문제 출처 : programmers.co.kr/learn/courses/30/lessons/17682 코딩테스트 연습 - [1차] 다트 게임 programmers.co.kr 내가 작성한 코드 import java.util.ArrayList; import java.util.List; class Solution { public int solution(String dartResult) { int answer = 0; String[] score = dartResult.split(""); String tempStr = ""; List list = new ArrayList(); for(int i=0; i
알고리즘 문제 출처 : programmers.co.kr/learn/courses/30/lessons/12930 코딩테스트 연습 - 이상한 문자 만들기 문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 programmers.co.kr 내가 작성한 코드 문제를 특히나 잘 읽어야 하는 문제... 쉽다고 생각하고 자신있게 제출했는데 실패가 와장창 떠서 당황했었다. 반례를 잘 고려해야 한다. 각 단어는 "하나 이상의 공백문자"로 구분되어 있다. 그러므로 문자열의 앞, 뒤, 중간에 2개 이상의 공백문자가 들어간 경우를 고려해야 한다. 또한 그 공백문자 역시 그대로 출력해내야 한다..
알고리즘 문제 출처 : programmers.co.kr/learn/courses/30/lessons/12943 코딩테스트 연습 - 콜라츠 추측 1937년 Collatz란 사람에 의해 제기된 이 추측은, 주어진 수가 1이 될때까지 다음 작업을 반복하면, 모든 수를 1로 만들 수 있다는 추측입니다. 작업은 다음과 같습니다. 1-1. 입력된 수가 짝수라면 2 programmers.co.kr 내가 작성한 코드 굉장히 간단한 문제인데 습관처럼 정수를 int로 선언했다가 문제를 다시 읽고 수 범위를 확인한 후 long으로 바꿨다. public class Solution { public int solution(int num) { int answer = 0; long newNum = num; while(newNum !..
알고리즘 문제 출처 : programmers.co.kr/learn/courses/30/lessons/12915 코딩테스트 연습 - 문자열 내 마음대로 정렬하기 문자열로 구성된 리스트 strings와, 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 오름차순 정렬하려 합니다. 예를 들어 strings가 [sun, bed, car]이고 n이 1이면 각 단어의 인덱스 1 programmers.co.kr 내가 작성한 코드 public class Solution { public String[] solution(String[] strings, int n) { for(int i=0; i