일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
- 이분탐색
- 18111
- 브루트포스 알고리즘
- javascript
- 깊이 우선 탐색
- 5525
- 2018 KAKAO BLIND RECRUITMENT
- BOJ
- 4796
- Hasing
- n^2 배열 자르기
- 1620
- 주식 가격
- 숫자 문자열과 영단어
- C++
- colorSyntax
- 소수 체크
- 10162
- 위클리 챌린지
- 프로그래머스
- Git Convention
- mermaid js
- 없는 숫자 더하기
- 정수 삼각형
- codeSyntaxHighlight
- 다이내믹 프로그래밍
- 옵셔널 체이닝 연산자
- js
- 구간 합 구하기 4
- react
- Today
- Total
목록Algorithm/Programmers(c++) (86)
개발하는 kim-hasa
https://programmers.co.kr/learn/courses/30/lessons/12915 코딩테스트 연습 - 문자열 내 마음대로 정렬하기 문자열로 구성된 리스트 strings와, 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 오름차순 정렬하려 합니다. 예를 들어 strings가 ["sun", "bed", "car"]이고 n이 1이면 각 단어의 인덱 programmers.co.kr 특정 원소를 기준으로 단어를 정렬하는 방법입니다. 1. 특정 원소가 맨 앞이라면, 그대로 정렬하면 됩니다. 2. 특정 원소를 맨 앞으로 보내서 단어를 새로 만든 후, 배열에 넣습니다. 그 이후에 배열을 정렬하고 그 단어를 원상복구하면 완료! 단어를 재조합한다는 생각을 하지 못해서 오래 걸린 문제..
https://programmers.co.kr/learn/courses/30/lessons/12912 코딩테스트 연습 - 두 정수 사이의 합 두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solution을 완성하세요. 예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다. 제한 조건 a와 b가 같은 경우 programmers.co.kr 두 정수 사이의 합을 구하는 문제입니다. 1. a와 b가 같다면 -> a를 리턴 2. a가 b보다 크다면 -> b를 증가시키면서 더해서 a와 같아질 때까지 더함 3. b가 a보다 크다면 -> a를 증가시키면서 더해서 b와 같아질 때까지 더함 #include #include using names..
https://programmers.co.kr/learn/courses/30/lessons/12910 코딩테스트 연습 - 나누어 떨어지는 숫자 배열 array의 각 element 중 divisor로 나누어 떨어지는 값을 오름차순으로 정렬한 배열을 반환하는 함수, solution을 작성해주세요. divisor로 나누어 떨어지는 element가 하나도 없다면 배열에 -1을 담아 반환하 programmers.co.kr 나누어 떨어지면 그 숫자를 오름차순으로 출력하는 문제입니다. 먼저 숫자가 나누어 떨어지면 배열에 넣은 후, 비어있다면 -1, 아니면 정렬합니다. #include #include #include using namespace std; vector solution(vector arr, int divi..
https://programmers.co.kr/learn/courses/30/lessons/12906 코딩테스트 연습 - 같은 숫자는 싫어 배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다. 단, 제거된 후 남은 programmers.co.kr 앞에서부터 숫자를 넣은데 중복하는 숫자는 한번만 넣는 문제입니다. 가장 먼저 첫 원소는 무조건 넣은 후, 원소를 beforeArr에 저장합니다. 그 이후 같지 않으면 배열에 추가하고 그 원소를 저장하는 방식으로 반복문을 돌립니다. #include #include using namespace std; vector solution(vect..
https://programmers.co.kr/learn/courses/30/lessons/82612?language=cpp 코딩테스트 연습 - 1주차 새로 생긴 놀이기구는 인기가 매우 많아 줄이 끊이질 않습니다. 이 놀이기구의 원래 이용료는 price원 인데, 놀이기구를 N 번 째 이용한다면 원래 이용료의 N배를 받기로 하였습니다. 즉, 처음 이 programmers.co.kr 인기있는 놀이기구를 탈때마다 가격이 늘어납니다. 첫번째가 10이라면 2번째는 20, n번째는 n * 10 인 구조입니다. 결국 price가 price * 1, price * 2, price * 3,,,,,,,, price * n으로 늘어나므로 총 (n+1)*n / 2 * price 의 가격입니다. 범위가 int이상일 수 있으므로..
https://programmers.co.kr/learn/courses/30/lessons/17682 코딩테스트 연습 - [1차] 다트 게임 programmers.co.kr 다트 게임은 총 3번의 기회로 구성된다. 각 기회마다 얻을 수 있는 점수는 0점에서 10점까지이다. 점수와 함께 Single(S), Double(D), Triple(T) 영역이 존재하고 각 영역 당첨 시 점수에서 1제곱, 2제곱, 3제곱 (점수1 , 점수2 , 점수3 )으로 계산된다. 옵션으로 스타상(*) , 아차상(#)이 존재하며 스타상(*) 당첨 시 해당 점수와 바로 전에 얻은 점수를 각 2배로 만든다. 아차상(#) 당첨 시 해당 점수는 마이너스된다. 스타상(*)은 첫 번째 기회에서도 나올 수 있다. 이 경우 첫 번째 스타상(*)..
https://programmers.co.kr/learn/courses/30/lessons/17681 코딩테스트 연습 - [1차] 비밀지도 비밀지도 네오는 평소 프로도가 비상금을 숨겨놓는 장소를 알려줄 비밀지도를 손에 넣었다. 그런데 이 비밀지도는 숫자로 암호화되어 있어 위치를 확인하기 위해서는 암호를 해독해야 한다. 다 programmers.co.kr 비밀지도를 해독하는 문제입니다. 1. 숫자를 2진수로 변경해가면서 두 수중에 하나라도 자리수가 1이라면 1을 넣습니다. 2. 2진수가 반대로 들어가있으므로, 반대로 돌려서 출력합니다. -> 출력하면서 1이라면 #, 0이라면 공백을 더해서 출력합니다. 처음에는 되게 문제 풀이에 감이 오지 않았는데, 한번 써보자! 하고 푸니까 쉽게 풀린 문제였습니다. #in..
https://programmers.co.kr/learn/courses/30/lessons/81301 코딩테스트 연습 - 숫자 문자열과 영단어 네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자 programmers.co.kr 영단어를 바꿔서 숫자로 변환한 후 계산하는 문제입니다. 영단어라면 첫 문자, 2번째 문자까지 구해서 숫자를 판별한 후 string에 더하는 방식으로 문자열로 구합니다. 숫자인 경우 문자열 자체를 더하고 index(len)을 증가시켜서 구합니다. 마지막에 string을 int로 변환해서 답을 구합니다. 처음에는 벡터에 숫자를 넣어서 계산했었는데, tim..
https://programmers.co.kr/learn/courses/30/lessons/1845 코딩테스트 연습 - 폰켓몬 당신은 폰켓몬을 잡기 위한 오랜 여행 끝에, 홍 박사님의 연구실에 도착했습니다. 홍 박사님은 당신에게 자신의 연구실에 있는 총 N 마리의 폰켓몬 중에서 N/2마리를 가져가도 좋다고 했습니다. programmers.co.kr 가장 먼저 벡터를 정렬합니다. 그 이후에 종류가 다르면 가져갈 수 있는 숫자를 증가시키고 같으면 넘어갑니다. 만약 최대로 가져갈 수 있는 종류 수보다 커지면 최대 수를 리턴합니다. #include #include using namespace std; int solution(vector nums) { int answer = 0; int count = nums.s..
https://programmers.co.kr/learn/courses/30/lessons/12903 코딩테스트 연습 - 가운데 글자 가져오기 단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다. 재한사항 s는 길이가 1 이상, 100이하인 스트링입니다. 입출력 예 s ret programmers.co.kr 글자의 길이가 홀수라면 가운데 1개만을, 짝수라면 가운데 2개를 리턴하는 프로그램입니다. #include #include using namespace std; string solution(string s) { string answer = ""; int len = s.length(); // s의 길이 if(len % 2 ==..