구슬을 나누는 경우의 수 : 문제 링크구슬의 개수 balls와 나누어 줄 구슬 개수 share이 매개변수로 주어질 때, balls개의 구슬 중 share개의 구슬을 고르는 가능한 모든 경우의 수를 return서로 다른 n개 중 m개를 뽑는 조합 공식을 활용answer을
공 던지기 : 문제 링크친구들의 번호가 들어있는 정수 배열 numbers와 정수 k가 주어질 때, k번째로 공을 던지는 사람의 번호를 return인덱스는 0부터 시작하고, 오른쪽 한 명을 건너뛰는 규칙을 활용인덱스가 numbers의 크기를 넘어갈 경우, answer에서
컨트롤 제트 : 문제 링크숫자와 "Z"가 공백으로 구분되어 담긴 문자열 s가 주어진다. 문자열에 있는 숫자를 차례대로 더하고, "Z"가 나오면 바로 전에 더했던 숫자를 뺀 값을 return문자열 format을 파싱할 때 쓰는 클래스를 사용하기 위해 을 헤더에 포함ist
소인수분해 : 문제 링크자연수 n이 매개변수로 주어질 때 n의 소인수를 오름차순으로 담은 배열을 returnanswer 벡터에 저장되는 소인수가 겹치지 않도록, find 함수를 사용할 것이므로 algorithm 헤더를 include인덱스는 2로 시작하고, n은 그것의
이진수 더하기 : 문제 링크이진수를 의미하는 두 개의 문자열 bin1과 bin2가 매개변수로 주어질 때, 두 이진수의 합을 return문자열 -> 2진수 -> 10진수 -> 덧셈 -> 2진수 -> 문자열 -> reverse의 순서로 연산을 진행하도록 문제를 풀었다.주어
잘라서 배열로 저장하기 : 문제 링크문자열 my_str과 n이 매개변수로 주어질 때, my_str을 길이 n씩 잘라서 저장한 배열을 returnmy_str 문자열 길이를 n으로 나눈 몫과 나머지를 각각 변수 q와 r에 저장q는 for문 loop 반복 횟수로 사용, r이
영어가 싫어요 : 문제 링크문자열 numbers가 매개변수로 주어질 때, numbers를 정수로 바꿔 returnnumber라는 문자열 벡터에 "zero"부터 "nine"까지 저장numbers 문자열의 길이가 0이 될 때까지 작동하도록 하고, numbers 문자열에서
문자열 계산하기 : 문제 링크my_string은 "3 + 5"처럼 문자열로 된 수식이다. 문자열 my_string이 매개변수로 주어질 때, 수식을 계산한 값을 return문자열 format을 파싱할 때 쓰는 클래스를 사용하기 위해 sstream을 헤더에 포함string
OX퀴즈 : 문제 링크덧셈, 뺄셈 수식들이 'X 연산자 Y = Z' 형태로 들어있는 문자열 배열 quiz가 매개변수로 주어진다. 수식이 옳다면 "O"를 틀리다면 "X"를 순서대로 담은 배열을 return문자열 format을 파싱할 때 사용하는 stringstream 클
삼각형의 완성조건 (2) : 문제 링크선분 세 개로 삼각형을 만들기 위해서는 '가장 긴 변의 길이는 다른 두 변의 길이의 합보다 작아야 한다.'는 조건을 만족해야 한다.삼각형의 두 변의 길이가 담긴 배열 sides이 매개변수로 주어진다. 나머지 한 변이 될 수 있는 정
외계어 사전 : 문제 링크알파벳이 담긴 배열 spell과 외계어 사전 dic이 매개변수로 주어진다. spell에 담긴 알파벳을 한번씩만 모두 사용한 단어가 dic에 존재한다면 1, 존재하지 않는다면 2를 returndic, spell 크기만큼 2중 for문을 돌리고,
직사각형 넓이 구하기 : 문제 링크직사각형 네 꼭짓점의 좌표 \[x1, y1, x2, y2, x3, y3, x4, y4]가 담겨있는 배열 dots가 매개변수로 주어질 때, 직사각형의 넓이를 returnx1, x2 변수를 dots0, y1, y2 변수를 dots0로 초기
캐릭터의 좌표 : 문제 링크게임에는 up, down, left, right 방향키가 있으며 각 키를 누르면 위, 아래, 왼쪽, 오른쪽으로 한 칸씩 이동한다. 머쓱이가 입력한 방향키의 배열 keyinput와 맵의 크기 board이 매개변수로 주어진다. 0, 0은 boar
다항식 더하기 : 문제 링크한 개 이상의 항의 합으로 이루어진 식을 다항식이라고 하며, 계산할 때는 동류항끼리 계산해 정리한다.덧셈을 이루어진 다항식 polynomial이 매개변수로 주어질 때, 동류항끼리 더한 결괏값을 문자열로 return 하며, 같은 식이라면 가장
로그인 성공? : 문제 링크머쓱이가 입력한 아이디와 패스워드가 담긴 배열 id_pw와 회원들의 정보가 담긴 2차원 배열 db가 주어질 때, 아이디와 비밀번호가 모두 일치하는 회원정보가 있으면 "login"을, 로그인이 실패했을 때 아이디가 일치하는 회원이 없다면 "fa
치킨 쿠폰 : 문제 링크프로그래머스 치킨을 시켜먹으면 한 마리당 쿠폰을 한 장 발급한다(서비스 치킨에도 발급). 쿠폰을 열 장 모으면 치킨을 한 마리 서비스로 받을 수 있다. 시켜먹은 치킨의 수 chicken이 매개변수로 주어질 때 받을 수 있는 최대 서비스 치킨의 수
저주의 숫자 : 문제 링크3x 마을 사람들은 3을 저주의 숫자라고 생각하기 때문에 3의 배수와 숫자 3을 사용하지 않는다. 정수 n이 매개변수로 주어질 때, n을 3x 마을에서 사용하는 숫자로 바꿔 returnanswer 변수에 매개변수 n값을 저장하고, for loo
특이한 정렬 : 문제 링크정수 n을 기준으로 n과 가까운 수부터 정렬하는데, 이때 n으로부터의 거리가 같다면 더 큰수를 앞에 오도록 배치한다. 정수가 담긴 배열 numlist와 정수n이 주어질 때 numlist의 원소를 n으로부터 가까운 순서대로 정렬한 배열을 retu
문자열 밀기 : 문제 링크문자열 "hello"에서 각 문자를 오른쪽으로 한 칸씩 밀고 마지막 문자는 맨앞으로 이동시키면 "ohell"이 되고, 이것을 문자열을 민다고 정의문자열 A와 B가 매개변수로 주어질 때, A를 밀어서 B가 될 수 있다면 밀어야 하는 최소 횟수를
다음에 올 숫자 : 문제 링크등차수열 혹은 등비수열 common이 매개변수로 주어질 때, 마지막 원소 다음으로 올 숫자를 returncommon의 길이는 2보다 크고 1,000보다 작으므로 최소 3개의 원소가 주어진다. 따라서 (common2 - common1)과 (c
연속된 수의 합 : 문제 링크두 정수 num과 total이 주어진다. 연속된 수 num개를 더한 값이 total이 될때, 정수 배열을 오름차순으로 담아 return규칙을 찾아보면 num이 홀수 일때는 total에서 num을 나눈 몫이 정수 배열의 정가운데에, 짝수 일때
평행 : 문제 링크점 네 개의 좌표를 담은 이차원 배열 dots가 다음과 같이 매개변수로 주어진다.\[x1,y1, x2,y2, x3,y3, x4,y4]주어진 네 개의 점을 두 개씩 이었을 때, 두 직선이 평행이 되는 경우가 있으면 1을 없으면 0을 return두 선분이
등수 매기기 : 문제 링크영어 점수와 수학 점수를 담은 2차원 정수 배열 score가 주어질 때, 영어 점수와 수학 점수의 평균을 기준으로 매긴 등수를 담은 배열을 return등수를 담은 배열인 answer을 score.size() 크기 만큼 할당하고, for loop
유한소수 판별하기 : 문제 링크두 정수 a와 b가 매개변수로 주어질 때, a/b가 유한소수이면 1을, 무한소수라면 2를 return유한소수 : 소수점 아래 숫자가 계속되지 않고 유한개인 소수, 기약분수로 나타내었을 때, 분모의 소인수가 2와 5만 존재해야한다.gcd()
문제 등수 매기기 : 문제 링크 문제 분석 다음 그림과 같이 지뢰가 있는 지역과 지뢰에 인접한 위, 아래, 좌, 우, 대각선 칸을 모두 위험지역으로 분류한다. 지뢰는 2차원 배열 board에 1로 표시되어 있고 board에는 지뢰가 매설된 지역 1과, 지뢰가 없는
겹치는 선분의 길이 : 문제 링크선분 3개가 평행하게 놓여 있고, 세 선분의 시작과 끝 좌표가 \[start, end, start, end, start, end] 형태로 들어있는 2차원 배열 lines가 매개변수로 주어질 때, 두 개 이상의 선분이 겹치는 부분의 길이를
옹알이 (1) : 문제 링크조카는 "aya", "ye", "woo", "ma" 네 가지 발음을 최대 한 번씩 사용해 조합한(이어 붙인) 발음밖에 하지 못한다. 문자열 배열 babbling이 매개변수로 주어질 때, 조카가 발음할 수 있는 단어의 개수를 return이중 f