C++
[ C++ ] 프로그래머스: 로또의 최고 순위와 최저 순위
안녕하세요? 수구리입니다. 이번 포스팅에서도 프로그래머스 문제를 가져왔습니다~ 이 문제에서는 로또와 관련된 문제인데요. vector에서 find 함수에 대한 내용입니다. 문제는 아래 링크에 두었습니다 생각해야 할 조건이 있으니 천천히 읽어보고 오시는 것을 추천드립니다! [ 문제 ] 프로그래머스: 로또의 최고 순위와 최저 순위 https://programmers.co.kr/learn/courses/30/lessons/77484 코딩테스트 연습 - 로또의 최고 순위와 최저 순위 로또 6/45(이하 '로또'로 표기)는 1부터 45까지의 숫자 중 6개를 찍어서 맞히는 대표적인 복권입니다. 아래는 로또의 순위를 정하는 방식입니다. 1 순위 당첨 내용 1 6개 번호가 모두 일치 2 5개 번호 programmers...
[ C++ ] 프로그래머스: 가운데 글자 가져오기
안녕하세요? 수구리입니다. 이번 포스팅에서는 프로그래머스 문제인 가운데 글자 가져오기에 대한 문제입니다. 문자열을 다루는 함수에 대해서 알아보도록 하겠습니다~ [ 문제 ] 프로그래머스: 가운데 글자 가져오기 https://programmers.co.kr/learn/courses/30/lessons/12903 코딩테스트 연습 - 가운데 글자 가져오기 단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다. 재한사항 s는 길이가 1 이상, 100이하인 스트링입니다. 입출력 예 s ret programmers.co.kr [ 나의 풀이 ] #include #include using namespace std; string solution(..
[ C++ ] 백준 1920: 수 찾기
안녕하세요? 수구리입니다. 이번에 풀어볼 문제는 이분 탐색입니다. 이분 탐색은 한 배열에서 특정 요소를 찾기 위해서 사용되는 방법입니다. 이는 제가 요즘 즐겨보고 있는 터퀴즈에서 쉽게 접할 수 있습니다! 터퀴즈의 마지막 부분에서 퀴즈를 내는 부분에서 이용진 님께서 "~~ 산의 높이는 몇 m일까요?" 라던지 " ~~ 의 키는 몇 cm일까요?" 등의 문제를 낸 기억이 있습니다. 여기서 게스트는 1도 모르기 때문에 특정 숫자를 말하죠. 그러면 이용진 님께서는 답이 게스트가 말한 값보다 크다면 UP을, 아니라면 DOWN을 말하시죠! 이게 바로 이분 탐색 방법이라고 볼 수 있습니다. 생각보다 일상생활에서 흔히 볼 수 있죠?? 아무튼 각설하고 바로 문제 확인해 보시기 바랍니다! [ 문제 ] 1920: 수 찾기 ht..
[ C++ ] 프로그래머스: 소수 만들기
이번 포스팅에서는 소수를 판별하는 로직과, 재귀를 이용한 조합을 사용해서 배열 내의 값을 조작해서 소수를 만들 수 있는지 없는지에 대한 문제를 풀어보도록 하겠습니다. 문제는 아래 링크에 있습니다. [ 문제 ] 프로그래머스: 소수 만들기 https://programmers.co.kr/learn/courses/30/lessons/12977 코딩테스트 연습 - 소수 만들기 주어진 숫자 중 3개의 수를 더했을 때 소수가 되는 경우의 개수를 구하려고 합니다. 숫자들이 들어있는 배열 nums가 매개변수로 주어질 때, nums에 있는 숫자들 중 서로 다른 3개를 골라 더했을 때 programmers.co.kr [ 나의 풀이 ] #include #include #include #define PICK 3 using na..
[ C++ ] 프로그래머스: 완주하지 못한 선수
안녕하세요? 수구리입니다. 이번 문제는 프로그래머스의 해쉬 part에 있는 문제입니다. 사실 해쉬 부분에 있어 해쉬로 풀어도 가능하지만, 저는 좀 다르게 풀었습니다. 문제는 아래 링크에 있습니다. [ 문제 ] 프로그래머스 : 완주하지 못한 선수 https://programmers.co.kr/learn/courses/30/lessons/42576 코딩테스트 연습 - 없는 숫자 더하기 0부터 9까지의 숫자 중 일부가 들어있는 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요. 제한 programmers.co.kr [ 나의 풀이 ] #include #include #include us..
[ C++ ] 프로그래머스: 없는 숫자 더하기
안녕하세요? 수구리입니다. 이번 포스팅은 프로그래머스 문제를 풀어보려고 합니다. Level 1이므로 가볍게 풀어보고 지나가도록 하겠습니다. 문제는 아래 링크에 있습니다. [ 문제 ] 프로그래머스 : 없는 숫자 더하기 https://programmers.co.kr/learn/courses/30/lessons/86051 코딩테스트 연습 - 없는 숫자 더하기 0부터 9까지의 숫자 중 일부가 들어있는 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요. 제한 programmers.co.kr [ 나의 풀이 ] #include #include using namespace std; int so..
[ C++ ] 백준 1712: 손익 분기점
안녕하세요? 수구리입니다. 이번에 풀어볼 문제는 백준의 손익 분기점이라는 문제입니다. 너무 간단하다고 생각해서 바로 풀었지만 시간 초과가 났었습니다. 문제의 정답률을 보니 약 25% 더라구요.. ㅎ 그래서 차근차근 다시 생각해보고 적절한 답을 풀어냈던 것 같습니다. 그때의 기억을 되살려보면서 복습 해보도록 하겠습니다. 문제는 아래 링크에 있습니다. 한번씩 생각해보시는 것도 좋아 보이네요. [ 문제 ] 1712: 손익 분기점 https://www.acmicpc.net/problem/1712 1712번: 손익분기점 월드전자는 노트북을 제조하고 판매하는 회사이다. 노트북 판매 대수에 상관없이 매년 임대료, 재산세, 보험료, 급여 등 A만원의 고정 비용이 들며, 한 대의 노트북을 생산하는 데에는 재료비와 www..
[ C++ ] 백준 2775번: 부녀회장이 될테야
안녕하세요? 수구리입니다. 이번 포스팅에서는 단계별로 풀어보기의 2차원 배열 문제를 가져왔습니다. 2차원 배열은 쉽게 말해서 격자모양의 배열이라고 생각하시면 됩니다. 각각의 원소에 접근하는 방식도 일차원 배열과 크게 다를 점이 없습니다. 문제를 풀어보면서 설명을 이어나가겠습니다. 아래는 백준 문제 링크입니다. 문제를 보시고 생각해보고 풀이를 봐주세요! [ 문제 ] 2755: 부녀회장이 될테야 https://www.acmicpc.net/problem/2775 2775번: 부녀회장이 될테야 첫 번째 줄에 Test case의 수 T가 주어진다. 그리고 각각의 케이스마다 입력으로 첫 번째 줄에 정수 k, 두 번째 줄에 정수 n이 주어진다 www.acmicpc.net [ 나의 풀이 ] #include using ..
[ C++ ] 백준 10818번: 최소, 최대
안녕하세요? 수구리입니다. 이번 포스팅에서는 단계별로 풀어보기 일차원 배열의 마지막 문제인 최소, 최대입니다. C++에서는 vector라는 컨테이너가 있는데 여기서 아주 쉽게 최솟값과 최댓값을 찾아낼 수 있습니다. 문제는 아래 링크에 있습니다. [ 문제 ] 10818: 최소, 최대 https://www.acmicpc.net/problem/10818 10818번: 최소, 최대 첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다. www.acmicpc.net [ 나의 풀이 ] #include #include #include #define ..
[ C++ ] 백준 8958번: OX퀴즈
안녕하세요? 수구리입니다. 이번 문제도 마찬가지로 일차원 배열에 있는 문제입니다. 간단하게 설명하자면 OX 퀴즈 결과를 일차원 배열로 입력이 들어오게 됩니다. 이때 문제에서 정의한 규칙에 의해서 점수를 산출하여 출력하는 문제입니다. [ 문제 ] 8958: OX퀴즈 https://www.acmicpc.net/problem/8958 8958번: OX퀴즈 "OOXXOXXOOO"와 같은 OX퀴즈의 결과가 있다. O는 문제를 맞은 것이고, X는 문제를 틀린 것이다. 문제를 맞은 경우 그 문제의 점수는 그 문제까지 연속된 O의 개수가 된다. 예를 들어, 10번 문제의 점수 www.acmicpc.net [ 나의 풀이 ] #include #include using namespace std; int main() { io..