본문 바로가기

Preparing Coding Test/Programmers L127

[Java] 핸드폰 번호 가리기 문제 https://programmers.co.kr/learn/courses/30/lessons/12948 코딩테스트 연습 - 핸드폰 번호 가리기 프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다. 전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자 programmers.co.kr 코드 class Solution { public String solution(String phone_number) { String answer = ""; int length = phone_number.length(); for(int i=0; i 2020. 7. 28.
[Java] 하샤드 수 문제 https://programmers.co.kr/learn/courses/30/lessons/12947 코딩테스트 연습 - 하샤드 수 양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다. 자연수 x를 입력받아 x가 하� programmers.co.kr 참고 1. 형변환 (출처 : https://joont92.github.io/java/%EC%9E%90%EB%A3%8C%ED%98%95/) 1-1. 명시적 형변환 캐스팅 연산자를 써서 명시적으로 형을 변환한다. 1-2. 크기에 따른 형변환 byte(1) < short(2) < int(4) < long(8) < float(4) < .. 2020. 7. 28.
[Java] 평균 구하기 문제 https://programmers.co.kr/learn/courses/30/lessons/12944 코딩테스트 연습 - 평균 구하기 정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보세요. 제한사항 arr은 길이 1 이상, 100 이하인 배열입니다. arr의 원소는 -10,000 이상 10,000 이하인 정수입니다. 입출력 예 arr programmers.co.kr 코드 class Solution { public double solution(int[] arr) { double answer = 0; for(int element : arr){ answer += element; } answer /= arr.length; return answer; } } 2020. 7. 28.
[Java] 콜라츠 추측 문제 https://programmers.co.kr/learn/courses/30/lessons/12943 코딩테스트 연습 - 콜라츠 추측 1937년 Collatz란 사람에 의해 제기된 이 추측은, 주어진 수가 1이 될때까지 다음 작업을 반복하면, 모든 수를 1로 만들 수 있다는 추측입니다. 작업은 다음과 같습니다. 1-1. 입력된 수가 짝수라면 2�� programmers.co.kr 풀이 참고 계산에 직접 참여하는 cal 변수 : int형의 범위(-2,147,483,648 ~ 2,147,483,647)를 벗어날 수 있으므로 long형으로 설정했다. 코드 class Solution { public int solution(int num) { int answer = 0; long cal = num; whil.. 2020. 7. 28.
[Java] 짝수와 홀수 문제 https://programmers.co.kr/learn/courses/30/lessons/12937 코딩테스트 연습 - 짝수와 홀수 정수 num이 짝수일 경우 Even을 반환하고 홀수인 경우 Odd를 반환하는 함수, solution을 완성해주세요. 제한 조건 num은 int 범위의 정수입니다. 0은 짝수입니다. 입출력 예 num return 3 Odd 4 Even programmers.co.kr 코드 class Solution { public String solution(int num) { String answer = ""; if(num%2==0) answer = "Even"; else answer = "Odd"; return answer; } } 2020. 7. 28.
[Java] 정수 제곱근 판별 문제 https://programmers.co.kr/learn/courses/30/lessons/12934 코딩테스트 연습 - 정수 제곱근 판별 임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다. n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함� programmers.co.kr 풀이 1. n의 제곱근 값(실수)을 temp 변수에 담는다. 2. temp와 temp의 정수를 비교한다. 2-1. 둘의 차이 > 0 temp는 소수점 아래 값이 있다. = n은 정수 제곱근이 존재하지 않는다. 2-2. 둘의 차이 == 0 n은 양의 정수인 제곱근이 존재한다. 3. n의 양의 제곱근이 존재할 경우, 제곱근+1의.. 2020. 7. 27.
[Java] 자연수 뒤집어 배열로 만들기 문제 https://programmers.co.kr/learn/courses/30/lessons/12932 코딩테스트 연습 - 자연수 뒤집어 배열로 만들기 자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다. 제한 조건 n은 10,000,000,000이하인 자연수입니다. 입출력 예 n return 12345 programmers.co.kr 코드 import java.util.ArrayList; class Solution { public int[] solution(long n) { ArrayList list_answer = new ArrayList(); while(n!=0){ list_answer.add(n%10); n.. 2020. 7. 27.
[Java] 자릿수 더하기 문제 https://programmers.co.kr/learn/courses/30/lessons/12931 코딩테스트 연습 - 자릿수 더하기 자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요. 예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다. 제한사항 N의 범위 : 100,000,000 이하의 자연수 입출 programmers.co.kr 코드 public class Solution { public int solution(int n) { int answer = 0; while(n>=10){ answer += n%10; n /= 10; } answer += n; return answer; } } 2020. 7. 27.
[Java] 이상한 문자 만들기 문제 https://programmers.co.kr/learn/courses/30/lessons/12930 코딩테스트 연습 - 이상한 문자 만들기 문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 programmers.co.kr 참고 1. 문자열 나누기 1-1. java.lang.String.split() ( 출처 : elmkm.tistory.com/20 ) vs. StringTokenizer, substring() - public String[] split(String regex); regex를 기준으로 문자열을 구분해서 배열로 출력 구분된 문자열의 길이가 0이면 빈.. 2020. 7. 23.