본문 바로가기

Coding Test/프로그래머스 연습

(36)
[JAVA] 콜라츠 추측 문제 설명1937년 Collatz란 사람에 의해 제기된 이 추측은, 주어진 수가 1이 될 때까지 다음 작업을 반복하면, 모든 수를 1로 만들 수 있다는 추측입니다. 작업은 다음과 같습니다.1-1. 입력된 수가 짝수라면 2로 나눕니다. 1-2. 입력된 수가 홀수라면 3을 곱하고 1을 더합니다. 2. 결과로 나온 수에 같은 작업을 1이 될 때까지 반복합니다. 예를 들어, 주어진 수가 6이라면 6 → 3 → 10 → 5 → 16 → 8 → 4 → 2 → 1 이 되어 총 8번 만에 1이 됩니다. 위 작업을 몇 번이나 반복해야 하는지 반환하는 함수, solution을 완성해 주세요. 단, 주어진 수가 1인 경우에는 0을, 작업을 500번 반복할 때까지 1이 되지 않는다면 –1을 반환해 주세요. 👽내 코드clas..
[JAVA] 직사각형 별찍기 문제 설명이 문제에는 표준 입력으로 두 개의 정수 n과 m이 주어집니다.별(*) 문자를 이용해 가로의 길이가 n, 세로의 길이가 m인 직사각형 형태를 출력해보세요. 👽내 코드import java.util.Scanner;class Solution { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int a = sc.nextInt(); int b = sc.nextInt(); for(int j=0; j  오랜만에 하는 별찍기!print/println복습!java.util.Scanner도 오랜만에 임포트. 🌈다른 풀이import java.util...
[JAVA] 최대공약수와 최소공배수 (feat. 유클리드 호제법..) 문제 설명두 수를 입력받아 두 수의 최대공약수와 최소공배수를 반환하는 함수, solution을 완성해 보세요. 배열의 맨 앞에 최대공약수, 그다음 최소공배수를 넣어 반환하면 됩니다. 예를 들어 두 수 3, 12의 최대공약수는 3, 최소공배수는 12이므로 solution(3, 12)는 [3, 12]를 반환해야 합니다. 👽내 코드class Solution { public int[] solution(int n, int m) { int max = 0; int min = 0; int a = n; int b = m; //최대공약수 구하기 while (b != 0) { int temp =..
[JAVA] 같은 숫자는 싫어 문제 설명배열 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 함수를 완성해 주세요. 👽내 코드import java.util.*;public class Solution { public int[] ..
[JAVA] 자릿수 더하기 문제 설명자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요.예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다. 👽내 코드import java.util.*;public class Solution { public int solution(int n) { int answer = 0; String nn = n + ""; String[] arr = nn.split(""); for(int i=0; i 항상 아는 방법으로.. 🌈다른 풀이import java.util.*;public class Solution { public int solution(int ..
[SQL] 과일로 만든 아이스크림 고르기 문제 설명다음은 아이스크림 가게의 상반기 주문 정보를 담은 FIRST_HALF 테이블과 아이스크림 성분에 대한 정보를 담은 ICECREAM_INFO 테이블입니다. FIRST_HALF 테이블 구조는 다음과 같며, SHIPMENT_ID, FLAVOR, TOTAL_ORDER 는 각각 아이스크림 공장에서 아이스크림 가게까지의 출하 번호, 아이스크림 맛, 상반기 아이스크림 총주문량을 나타냅니다. FIRST_HALF 테이블의 기본 키는 FLAVOR입니다.NAMETYPENULLABLESHIPMENT_IDINT(N)FALSEFLAVORVARCHAR(N)FALSETOTAL_ORDERINT(N)FALSEICECREAM_INFO 테이블 구조는 다음과 같으며, FLAVOR, INGREDITENT_TYPE 은 각각 아이스크림 ..
[JAVA] 서울에서 김서방 찾기 문제 설명String형 배열 seoul의 element중 "Kim"의 위치 x를 찾아, "김서방은 x에 있다"는 String을 반환하는 함수, solution을 완성하세요. seoul에 "Kim"은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니다. 👽내 코드class Solution { public String solution(String[] seoul) { String answer = ""; for(int i=0; i 어렵진 않았다.다른 풀이 확인 해보아야 할 듯. 🌈다른 풀이import java.util.Arrays;public class FindKim { public String findKim(String[] seoul){ ..
[JAVA] 두 정수 사이의 합 문제 설명두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solution을 완성하세요.예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다. 👽내 코드class Solution { public long solution(int a, int b) { long answer = 0; if(a = b; i--){ answer += (long)i; } } return answer; }} 두가지의 조건으로 나누어  for문 돌리기이게 효율적인 코드가 맞을까? 🌈다른 풀이class Solution { public..