전체 글 215

[프로그래머스, LV.0] 이진수 더하기

목차문제 설명이진수를 의미하는 두 개의 문자열 bin1과 bin2가 매개변수로 주어질 때, 두 이진수의 합을 return하도록 solution 함수를 완성해주세요. 제한사항return 값은 이진수를 의미하는 문자열입니다.1 ≤ bin1, bin2의 길이 ≤ 10bin1과 bin2는 0과 1로만 이루어져 있습니다.bin1과 bin2는 "0"을 제외하고 0으로 시작하지 않습니다. class Solution { public String solution(String bin1, String bin2) { StringBuilder result = new StringBuilder(); // 결과를 저장할 StringBuilder 객체를 초기화 int carry = 0; // 이진수 덧셈..

[프로그래머스, LV.0] 소인수분해

목차문제 설명소인수분해란 어떤 수를 소수들의 곱으로 표현하는 것입니다. 예를 들어 12를 소인수 분해하면 2 * 2 * 3 으로 나타낼 수 있습니다. 따라서 12의 소인수는 2와 3입니다. 자연수 n이 매개변수로 주어질 때 n의 소인수를 오름차순으로 담은 배열을 return하도록 solution 함수를 완성해주세요. 제한사항2 ≤ n ≤ 10,000 import java.util.ArrayList;import java.util.List;class Solution { public int[] solution(int n) { List factors = new ArrayList(); // 소인수 분해 시작 for (int i = 2; i 1) { ..

[프로그래머스, LV.0] 컨트롤 제트

목차문제 설명숫자와 "Z"가 공백으로 구분되어 담긴 문자열이 주어집니다. 문자열에 있는 숫자를 차례대로 더하려고 합니다. 이 때 "Z"가 나오면 바로 전에 더했던 숫자를 뺀다는 뜻입니다. 숫자와 "Z"로 이루어진 문자열 s가 주어질 때, 머쓱이가 구한 값을 return 하도록 solution 함수를 완성해보세요. 제한사항1 ≤ s의 길이 ≤ 200-1,000 s는 숫자, "Z", 공백으로 이루어져 있습니다.s에 있는 숫자와 "Z"는 서로 공백으로 구분됩니다.연속된 공백은 주어지지 않습니다.0을 제외하고는 0으로 시작하는 숫자는 없습니다.s는 "Z"로 시작하지 않습니다.s의 시작과 끝에는 공백이 없습니다."Z"가 연속해서 나오는 경우는 없습니다.  class Solution { public int s..

[프로그래머스, LV.0] k의 개수

목차문제 설명1부터 13까지의 수에서, 1은 1, 10, 11, 12, 13 이렇게 총 6번 등장합니다. 정수 i, j, k가 매개변수로 주어질 때, i부터 j까지 k가 몇 번 등장하는지 return 하도록 solution 함수를 완성해주세요.제한사항1 ≤ i 0 ≤ k ≤ 9class Solution { public int solution(int i, int j, int k) { int count = 0; String target = String.valueOf(k); for (int num = i; num 코드 설명target 변수: k를 문자열로 변환해 검색 대상 문자열을 준비한다.반복문: i부터 j까지 모든 숫자를 순회하며 각 숫자를 문자열로 변환한다.문자..

[프로그래머스, LV.0] 모스부호 (1)

목차 문제 설명머쓱이는 친구에게 모스부호를 이용한 편지를 받았습니다. 그냥은 읽을 수 없어 이를 해독하는 프로그램을 만들려고 합니다. 문자열 letter가 매개변수로 주어질 때, letter를 영어 소문자로 바꾼 문자열을 return 하도록 solution 함수를 완성해보세요.모스부호는 다음과 같습니다.morse = { '.-':'a','-...':'b','-.-.':'c','-..':'d','.':'e','..-.':'f', '--.':'g','....':'h','..':'i','.---':'j','-.-':'k','.-..':'l', '--':'m','-.':'n','---':'o','.--.':'p','--.-':'q','.-.':'r', '...':'s','-':'t','...

[프로그래머스, LV.0] A로 B 만들기

목차문제 설명문자열 before와 after가 매개변수로 주어질 때, before의 순서를 바꾸어 after를 만들 수 있으면 1을, 만들 수 없으면 0을 return 하도록 solution 함수를 완성해보세요. 제한사항0 before와 after는 모두 소문자로 이루어져 있습니다.import java.util.Arrays;class Solution { public int solution(String before, String after) { // 문자열을 문자 배열로 변환 후 정렬 char[] beforeArray = before.toCharArray(); char[] afterArray = after.toCharArray(); Arrays.sor..

[프로그래머스, LV.0] 7의 개수

목차 문제 설명머쓱이는 행운의 숫자 7을 가장 좋아합니다. 정수 배열 array가 매개변수로 주어질 때, 7이 총 몇 개 있는지 return 하도록 solution 함수를 완성해보세요.제한사항1 ≤ array의 길이 ≤ 1000 ≤ array의 원소 ≤ 100,000class Solution { public int solution(int[] array) { // 문자열 배열 선언 및 생성 String[] stringArray = new String[array.length]; // 정수 배열을 문자열 배열로 변환 int index = 0; // 문자열 배열의 인덱스 for (int num : array) { string..

[프로그래머스, LV.0] 한 번만 등장한 문자

목차문제 설명문자열 s가 매개변수로 주어집니다. s에서 한 번만 등장하는 문자를 사전 순으로 정렬한 문자열을 return 하도록 solution 함수를 완성해보세요. 한 번만 등장하는 문자가 없을 경우 빈 문자열을 return 합니다.제한사항0 s는 소문자로만 이루어져 있습니다.import java.util.*;class Solution { public String solution(String s) { // 각 문자의 등장 횟수를 저장할 Map Map charCount = new HashMap(); // 문자열의 각 문자에 대해 등장 횟수 카운트 for (char c : s.toCharArray()) { charCount.put(..

[프로그래머스, LV.0] 가까운 수

목차문제 설명정수 배열 array와 정수 n이 매개변수로 주어질 때, array에 들어있는 정수 중 n과 가장 가까운 수를 return 하도록 solution 함수를 완성해주세요.제한사항1 ≤ array의 길이 ≤ 1001 ≤ array의 원소 ≤ 1001 ≤ n ≤ 100가장 가까운 수가 여러 개일 경우 더 작은 수를 return 합니다. class Solution { public int solution(int[] array, int n) { // 차이값 배열 생성 int[] array_t = new int[array.length]; for (int i = 0; i  코드 설명1. 차이 계산입력 배열의 각 요소와 기준 값 n의 절대값 차이를 계산해 새 배열에 ..

[프로그래머스, LV.0] 숨어있는 숫자의 덧셈 (2)

목차 문제 설명문자열 my_string이 매개변수로 주어집니다. my_string은 소문자, 대문자, 자연수로만 구성되어있습니다. my_string안의 자연수들의 합을 return하도록 solution 함수를 완성해주세요.제한사항1 ≤ my_string의 길이 ≤ 1,0001 ≤ my_string 안의 자연수 ≤ 1000연속된 수는 하나의 숫자로 간주합니다.000123과 같이 0이 선행하는 경우는 없습니다.문자열에 자연수가 없는 경우 0을 return 해주세요.class Solution { public int solution(String my_string) { int sum = 0; // 정규식으로 숫자 추출 String[] numbers = my_string...