문자열을 정수로 바꾸기 : 문제 링크문자열 s를 숫자로 변환한 결과를 반환하는 함수 solution을 완성제한조건s의 길이는 1 이상 5이하이다.s의 맨앞에는 부호(+,-)가 올 수 있다.s는 부호와 숫자로만 이루어져있다.s는 "0"으로 시작하지 않는다.변환한 결과를
짝수와 홀수 : 문제 링크정수 num이 짝수일 경우 "Even"을 반환하고 홀수인 경우 "Odd"를 반환하는 함수 solution을 완성제한조건num은 int 범위의 정수이다.0은 짝수이다.if문을 통해 num을 2로 나눈 나머지가 1 또는 -1(num은 int 범위의
옹알이 (2) : 문제 링크머쓱이는 태어난 지 11개월 된 조카를 돌보고 있다. 조카는 아직 "aya", "ye", "woo", "ma" 네 가지 발음을 조합해서 만들 수 있는 발음밖에 하지 못하고 연속해서 같은 발음을 하는 것을 어려워한다. 문자열 배열 babblin
평균 구하기 : 문제 링크정수를 담고 있는 배열 arr의 평균값을 return하는 함수 solution을 완성제한사항arr은 길이 1 이상, 100 이하인 배열이다.arr의 원소는 -10,000 이상 10,000 이하인 정수이다.평균값을 저장할 double형 변수 an
나머지가 1이 되는 수 찾기 : 문제 링크자연수 n이 매개변수로 주어진다. n을 x로 나눈 나머지가 1이 되도록 하는 가장 작은 자연수 x를 return (답이 항상 존재함은 증명될 수 있다.)제한사항3 <= n <= 1,000,000나머지가 1이 되도록 하
x만큼 간격이 있는 n개의 숫자 : 문제 링크함수 solution은 정수 x와 자연수 n을 입력 받아, x부터 시작해 x씩 증가하는 숫자를 n개 지니는 리스트를 return제한 조건x는 -10000000 이상, 10000000 이하인 정수이다.n은 1000 이하인 자연
문자열 내 p와 y의 개수 : 문제 링크대문자와 소문자가 섞여있는 문자열 s가 주어진다. s에 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 return. 'p', 'y' 모두 하나도 없는 경우는 항상 True를 return. 단, 개수를
자릿수 더하기 : 문제 링크자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 완성. 예를들어 N = 123이면 1 + 2 + 3 = 6을 return제한사항N의 범위 : 100,000,000 이하의 자연수N의 각 자릿수의 합
자연수 뒤집어 배열로 만들기 : 문제 링크자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 return. 예를들어 n이 12345이면 5,4,3,2,1을 return제한 조건n은 10,000,000,000이하인 자연수이다.자연수 n을 뒤집어 각 자릿 숫자를
정수 제곱근 판별 : 문제 링크임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 한다. n이 양의 정수 x의 제곱이라면 x + 1의 제곱을 return 하고, n이 양의 정수 x의 제곱이 아니라면 -1을 return제한 사항n은 1이상,
정수 내림차순으로 배치하기 : 문제 링크함수 solution은 정수 n을 매개변수로 입력받는다. n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 return. 예를들어 n이 118327이면 873211을 return제한 조건n은 1이상 8,000,000,0
하샤드 수 : 문제 링크양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 한다. 예를 들어 18의 자릿수 합은 1 + 8 = 9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수이다 자연수 x를 입력받아 x가 하샤드 수인지 아닌지 검사하는 함수,
두 정수 사이의 합 : 문제 링크두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 return 하는 함수, solution을 완성. 예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 return제한 조건a와 b가 같
콜라츠 추측 : 문제 링크1937년 Collatz란 사람에 의해 제기된 이 추측은, 주어진 수가 1이 될 때까지 다음 작업을 반복을 반복하면, 모든 수를 1로 만들 수 있다는 추측이다. 작업은 다음과 같다.1-1. 입력된 수가 짝수라면 2로 나눈다.1-2. 입력된 수가
음양 더하기 : 문제 링크어떤 정수들이 있다. 이 정수들의 절댓값을 차례대로 담은 정수 배열 absolutes와 이 정수들의 부호를 차례대로 담은 불리언 배열 signs가 매개변수로 주어진다. 실제 정수들의 합을 구하여 return 하도록 solution 함수를 완성제
서울에서 김서방 찾기 : 문제 링크String형 배열 seoul의 element중 "Kim"의 위치 x를 찾아, "김서방은 x에 있다"는 String을 반환하는 함수, solution을 완성. seoul에 "Kim"은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는
나누어 떨어지는 숫자 배열 : 문제 링크array의 각 element 중 divisor로 나누어 떨어지는 값을 오름차순으로 정렬한 배열을 return하는 함수, solution을 작성. divisor로 나누어 떨어지는 element가 하나도 없다면 배열에 -1을 담아
없는 숫자 더하기 : 문제 링크0부터 9까지의 숫자 중 일부가 들어있는 정수 배열 numbers가 매개변수로 주어진다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성제한 사항1 <= n
핸드폰 번호 가리기 : 문제 링크프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가린다. 전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 \*으로 가린 문자열을 리턴하는
제일 작은 수 제거하기 : 문제 링크정수를 저장한 배열, arr에서 가장 작은수를 제거한 배열을 return하는 함수, solution을 완성. 단, 리턴하려는 배열이 빈 배열인 경우 배열에 -1을 채워 return. 예를들어 arr이 4,3,2,1인 경우는 4,3,2
가운데 글자 가져오기 : 문제 링크단어 s의 가운데 글자를 반환하는 함수, solution을 완성. 단어의 길이가 짝수라면 가운데 두글자를 return제한 사항s는 길이가 1 이상, 100이하인 스트링이다.가운데 글자를 저장할 문자열 answer를 초기화. if문을 통
내적 : 문제 링크길이가 같은 두 1차원 정수 배열 a, b가 매개변수로 주어진다. a와 b의 내적을 return 하도록 solution 함수를 완성. 이때, a와 b의 내적은 a0xb0 + a1xb1 + ... + an-1xbn-1이다. (n은 a, b의 길이)제한
수박수박수박수박수박수? : 문제 링크길이가 n이고, "수박수박수박수...."와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성. 예를들어 n이 4이면 "수박수박"을 return하고 3이라면 "수박수"를 return제한 조건n은 길이 10,000이하
약수의 개수와 덧셈 : 문제 링크두 정수 left와 right가 매개변수로 주어진다. left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return 하도록 solution 함수를 완성제한 사항1 &l
문자열 내림차순으로 배치하기 : 문제 링크문자열 s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로운 문자열을 return하는 함수, solution을 완성. s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로 간주한다.제한 사항str은 길이
부족한 금액 계산하기 : 문제 링크새로 생긴 놀이기구는 인기가 매우 많아 줄이 끊이질 않는다. 이 놀이기구의 원래 이용료는 price원 인데, 놀이기구를 N번째 이용한다면 원래 이용료의 N배를 받기로 했다. 즉, 처음 이용료가 100이었다면 2번째에는 200, 3번째에
문자열 다루기 기본 : 문제 링크문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성. 예를 들어 s가 "a234"이면 False를 return하고 "1234"라면 True를 return제한 사항s는 길이 1 이상, 길이
행렬의 덧셈 : 문제 링크행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 된다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 return하는 함수, solution을 완성제한 조건행렬 arr1, arr2의
직사각형 별찍기 : 문제 링크이 문제에는 표준 입력으로 두 개의 정수 n과 m이 주어진다. 별(\*) 문자를 이용해 가로의 길이가 n, 세로의 길이가 m인 직사각형 형태를 출력제한 조건n과 m은 각각 1000 이하인 자연수이다.정수형 변수 n, m을 초기화하고, 각 변
최대공약수와 최소공배수 : 문제 링크두 수를 입력받아 두 수의 최대공약수와 최소공배수를 return하는 함수, solution을 완성. 배열의 맨 앞에 최대공약수, 그다음 최소공배수를 넣어 return 하면 된다. 예를 들어 두 수 3, 12의 최대공약수는 3, 최소공
같은 숫자는 싫어 : 문제 링크배열 arr가 주어진다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 한다. 단, 제거된 후 남은 수들을 반환할 때는 배열 arr의 원소들의
3진법 뒤집기 : 문제 링크자연수 n이 매개변수로 주어진다. n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수를 return 하도록 solution 함수를 완성제한 사항n은 1이상, 100,000,000이하인 자연수이다.제곱을 계산하기 위해 po
예산 : 문제 링크S사에서는 각 부서에 필요한 물품을 지원해 주기 위해 부서별로 물품을 구매하는데 필요한 금액을 조사했다. 그러나, 전체 예산이 정해져 있기 때문에 모든 부서의 물품을 구매해 줄 수는 없다. 그래서 최대한 많은 부서의 물품을 구매해 줄 수 있도록 하려고
이상한 문자 만들기 : 문제 링크문자열 s는 한 개 이상의 단어로 구성되어 있다. 각 단어는 하나 이상의 공백문자로 구분되어 있다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 return하는 함수, solution을 완성제한 사항문
크기가 작은 부분문자열 : 문제 링크숫자로 이루어진 문자열 t와 p가 주어질 때, t에서 p와 길이가 같은 부분문자열 중에서, 이 부분문자열이 나타내는 수가 p가 나타내는 수보다 작거나 같은 것이 나오는 횟수를 return하는 함수 solution을 완성. 예를 들어,
삼총사 : 문제 링크한국중학교에 다니는 학생들은 각자 정수 번호를 갖고 있다. 이 학교 학생 3명의 정수 번호를 더했을 때 0이 되면 3명의 학생은 삼총사라고 한다. 예를 들어, 5명의 학생이 있고, 각각의 정수 번호가 순서대로 -2, 3, 0, 2, -5일 때, 첫
최소직사각형 : 문제 링크명함 지갑을 만드는 회사에서 지갑의 크기를 정하려고 한다. 다양한 모양과 크기의 명함들을 모두 수납할 수 있으면서, 작아서 들고 다니기 편한 지갑을 만들어야 한다. 이러한 요건을 만족하는 지갑을 만들기 위해 디자인팀은 모든 명함의 가로 길이와
시저 암호 : 문제 링크어떤 문장의 각 알파벳을 일정한 거리만큼 밀어서 다른 알파벳으로 바꾸는 암호화 방식을 시저 암호라고 한다. 예를 들어 "AB"는 1만큼 밀면 "BC"가 되고, 3만큼 밀면 "DE"가 된다. "z"는 1만큼 밀면 "a"가 된다. 문자열 s와 거리
숫자 문자열과 영단어 : 문제 링크네오와 프로도가 숫자놀이를 하고 있다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드르 건네주면 프로도는 원래 숫자를 찾는 게임이다. 다음은 숫자의 일부 자릿수를 영단어로 바꾸는 예시이다.1478 -> "one4s
가장 가까운 같은 글자 : 문제 링크문자열 s가 주어졌을 때, s의 각 위치마다 자신보다 앞에 나왔으면서, 자신과 가장 가까운 곳에 있는 같은 글자가 어디 있는지 알고 싶다. 예를 들어, s = "banana"라고 할 때, 각 글자들을 왼쪽부터 오른쪽으로 읽어 나가면서
문자열 내 마음대로 정렬하기 : 문제 링크문자열로 구성된 리스트 strings와, 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 오름차순 정렬하려 한다. 예를 들어 strings가 "sun", "bed", "car"이고 n이 1이면 각 단어의 인덱
영어 끝말잇기 : 문제 링크1부터 n까지 번호가 붙어있는 n명의 사람이 영어 끝말잇기를 하고 있다. 영어 끝말잇기는 다음과 같은 규칙으로 진행된다.1번부터 번호 순서대로 한 사람씩 차례대로 단어를 말한다.마지막 사람이 단어를 말한 다음에는 다시 1번부터 시작한다.앞사람
푸드 파이트 대회 : 문제 링크수웅이는 매달 주어진 음식을 빨리 먹는 푸드 파이트 대회를 개최한다. 이 대회에서 선수들은 1대 1로 대결하며, 매 대결마다 음식의 종류와 양이 바뀐다. 대결은 준비된 음식들을 일렬로 배치한 뒤, 한 선수는 제일 왼쪽에 있는 음식부터 오른
1차 비밀지도 : 문제 링크네오는 평소 프로도가 비상금을 숨겨놓는 장소를 알려줄 비밀지도를 손에 넣었다. 그런데 이 비밀지도는 숫자로 암호화되어 있어 위치를 확인하기 위해서는 암호를 해독해야 한다. 다행히 지도 암호를 해독할 방법을 적어놓은 메모도 함께 발견했다.지도는
두 개 뽑아서 더하기 : 문제 링크정수 배열 numbers가 주어진다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성제안 사항numbers의 길이는
콜라 문제 : 문제 링크오래전 유행했던 콜라 문제가 있다. 콜라 문제의 지문은 다음과 같다.정답은 아무에게도 말하지 마세요.콜라 빈 병 2개를 가져다주면 콜라 1병을 주는 마트가 있다. 빈 병 20개를 가져다주면 몇 병을 받을 수 있는가?단, 보유 중인 빈 병이 2개
추억 점수 : 문제 링크사진들을 보며 추억에 젖어 있던 루는 사진별로 추억 점수를 매길려고 한다. 사진 속에 나오는 인물의 그리움 점수를 모두 합산한 값이 해당 사진의 추억 점수가 된다. 예를 들어 사진 속 인물의 이름이 "may", "kein", "kain"이고 각
명예의 전당 (1) : 문제 링크"명예의 전당"이라는 TV 프로그램에서는 매일 1명의 가수가 노래를 부르고, 시청자들의 문자 투표수로 가수에게 점수를 부여한다. 매일 출연한 가수의 점수가 지금까지 출연 가수들의 점수 중 상위 k번째 이내이면 해당 가수의 점수를 명예의
카드 뭉치 : 문제 링크코니는 영어 단어가 적힌 카드 뭉치 두 개를 선물로 받았다. 코니는 다음과 같은 규칙으로 카드에 적힌 단어들을 사용해 원하는 순서의 단어 배열을 만들 수 있는지 알고 싶다.원하는 카드 뭉치에서 카드를 순서대로 한 장씩 사용한다.한 번 사용한 카드
2016년 : 문제 링크2016년 1월 1일은 금요일이다. 2016년 a월 b일은 무슨 요일일까? 두 수 a ,b를 입력받아 2016년 a월 b일이 무슨 요일인지 리턴하는 함수, solution을 완성. 요일의 이름은 일요일부터 토요일까지 각각 SUN,MON,TUE,W
과일 장수 : 문제 링크과일 장수가 사과 상자를 포장하고 있다. 사과는 상태에 따라 1점부터 k점까지의 점수로 분류하며, k점이 최상품의 사과이고 1점이 최하품의 사과이다. 사과 한 상자의 가격은 다음과 같이 결정된다.한 상자에 사과를 m개씩 담아 포장한다.상자에 담긴
폰켓몬 : 문제 링크당신은 폰켓몬을 잡기 위한 오랜 여행 끝에, 홍 박사님의 연구실에 도착했다. 홍 박사님은 당신에게 자신의 연구실에 있는 총 N 마리의 폰켓몬 중에서 N/2마리를 가져가도 좋다고 했다. 홍 박사님 연구실의 폰켓몬은 종류에 따라 번호를 붙여 구분한다.
모의고사 : 문제 링크수포자는 수학을 포기한 사람의 준말이다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 한다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍는다.1번 수포자가 찍는 방식: 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, ...2
소수 만들기 : 문제 링크주어진 숫자 중 3개의 수를 더했을 때 소수가 되는 경우의 개수를 구하려고 한다. 숫자들이 들어있는 배열 nums가 매개변수로 주어질 때, nums에 있는 숫자들 중 서로 다른 3개를 골라 더했을 때 소수가 되는 경우의 개수를 return 하도
소수 찾기 : 문제 링크1부터 입력받은 숫자 n 사이에 있는 소수의 개수를 반환하는 함수, solution을 완성. 소수는 1과 자기 자신으로만 나누어지는 수를 의미한다. (1은 소수가 아니다.)제한 조건n은 2이상 1000000이하의 자연수이다.제한 조건의 범위가 크
기사단원의 무기 : 문제 링크숫자나라 기사단의 각 기사에게는 1번부터 number까지 번호가 지정되어 있다. 기사들은 무기점에서 무기를 구매하려고 한다. 각 기사는 자신의 기사 번호의 약수 개수에 해당하는 공격력을 가진 무기를 구매하려 한다. 단, 이웃나라와의 협약에
덧칠하기 : 문제 링크어느 학교에 페인트가 칠해진 길이가 n미터인 벽이 있다. 벽에 동아리 · 학회 홍보나 회사 채용 공고 포스터 등을 게시하기 위해 테이프로 붙였다가 철거할 때 떼는 일이 많고 그 과정에서 페인트가 벗겨지곤 한다. 페인트가 벗겨진 벽이 보기 흉해져 학
실패율 : 문제 링크슈퍼 게임 개발자 오렐리는 큰 고민에 빠졌다. 그녀가 만든 프랜즈 오천성이 대성공을 거뒀지만, 요즘 신규 사용자의 수가 급감한 것이다. 원인은 신규 사용자와 기존 사용자 사이에 스테이지 차이가 너무 큰 것이 문제였다. 이 문제를 어떻게 할까 고민 한
1차 다트 게임 : 문제 링크카카오톡 게임별의 하반기 신규 서비스로 다트 게임을 출시하기로 했다. 다트 게임은 다트판에 다트를 세 차례 던져 그 점수의 합계로 실력을 겨루는 게임으로, 모두가 간단히 즐길 수 있다. 갓 입사한 무지는 코딩 실력을 인정받아 게임의 핵심 부
로또의 최고 순위와 최저 순위 : 문제 링크로또 6/45(이하 '로또'로 표기)는 1부터 45까지의 숫자 중 6개를 찍어서 맞히는 대표적인 복권이다. 아래는 로또의 순위를 정하는 방식이다.로또를 구매한 민우는 당첨 번호 발표일을 학수고대하고 있었다. 하지만, 민우의 동