분류 전체보기
-
[C++] sort 함수 compareC \ C++ 2021. 2. 9. 20:20
sort (RandomAccessIterator first, RandomAccessIterator last, Compare comp); 정렬해주는 함수로 굉장히 사용하기 편하다. 뒤에 compare는 사용하지 않아도 되고, sort (RandomAccessIterator first, RandomAccessIterator last); 그냥 사용할 경우에는 오름차순이 디폴트이다. sort를 이용한 오름차순 && 내림차순 나같은 경우 이해가 잘안가서 힘들었는데 설명이 맞을지는 모르겠으나, 오름차순의 경우 앞에 있는 수 보다 뒤에 있는 수가 더 클때 정렬해주는 경우로써 더 작은 숫자가 a에 더 큰 숫자가 b에 ex) {8,3} 이 있다면 a = 3 ,b = 8 내림차순의 경우 앞에 있는 수가 뒤에 있는 수보다 ..
-
[프로그래머스]문자열 내림차순으로 배치하기(C++)알고리즘 & 자료구조/코딩테스트 2021. 2. 9. 20:05
문제 설명 문자열 s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로운 문자열을 리턴하는 함수, solution을 완성해주세요. s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로 간주합니다. 제한 사항 str은 길이 1 이상인 문자열입니다. 입출력 예 s return Zbcdefg gfedcbZ sort() 를 이용하면 간단히 해결가능 sort 내림차순 정리한 내용 => junecode.tistory.com/67 #include #include #include #include using namespace std; //첫 번째 방법 bool comp(char a, char b) { return a > b; } string solution(string s) { string answ..
-
[프로그래머스] 수박수박수박수박수박수? (C++)알고리즘 & 자료구조/코딩테스트 2021. 2. 8. 16:55
문제 설명 길이가 n이고, 수박수박수박수....와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 수박수박을 리턴하고 3이라면 수박수를 리턴하면 됩니다. 제한 조건 n은 길이 10,000이하인 자연수입니다. 입출력 예 n return 3 수박수 4 수박수박 설명할게 딱히 없다. #include #include #include using namespace std; string solution(int n) { string answer = ""; for(int i = 0; i < n; i++) { if(i%2 == 0) { answer += "수"; } else { answer += "박"; } } return answer; } int main (void) {..
-
[프로그래머스] 서울에서 김서방 찾기 (C++)알고리즘 & 자료구조/코딩테스트 2021. 2. 7. 20:51
문제 설명 String형 배열 seoul의 element중 Kim의 위치 x를 찾아, 김서방은 x에 있다는 String을 반환하는 함수, solution을 완성하세요. seoul에 Kim은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니다. 제한 사항 seoul은 길이 1 이상, 1000 이하인 배열입니다. seoul의 원소는 길이 1 이상, 20 이하인 문자열입니다. Kim은 반드시 seoul 안에 포함되어 있습니다. 입출력 예 seoul return [Jane, Kim] 김서방은 1에 있다 더보기 std::to_string string to_string (int val); string to_string (long val); string to_string (long long val); str..
-
[프로그래머스] 나누어 떨어지는 숫자 배열 (C++)알고리즘 & 자료구조/코딩테스트 2021. 2. 6. 20:40
문제 설명 array의 각 element 중 divisor로 나누어 떨어지는 값을 오름차순으로 정렬한 배열을 반환하는 함수, solution을 작성해주세요. divisor로 나누어 떨어지는 element가 하나도 없다면 배열에 -1을 담아 반환하세요. 제한사항 arr은 자연수를 담은 배열입니다. 정수 i, j에 대해 i ≠ j 이면 arr[i] ≠ arr[j] 입니다. divisor는 자연수입니다. array는 길이 1 이상인 배열입니다. 입출력 예 arr divisor return [5, 9, 7, 10] 5 [5, 10] [2, 36, 1, 3] 1 [1, 2, 3, 36] [3,2,6] 10 [-1] 입출력 예 설명 입출력 예#1 arr의 원소 중 5로 나누어 떨어지는 원소는 5와 10입니다. 따라..
-
[프로그래머스]두 정수 사이의 합(C++)알고리즘 & 자료구조/코딩테스트 2021. 2. 6. 20:24
문제 설명 두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solution을 완성하세요. 예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다. 제한 조건 a와 b가 같은 경우는 둘 중 아무 수나 리턴하세요. a와 b는 -10,000,000 이상 10,000,000 이하인 정수입니다. a와 b의 대소관계는 정해져있지 않습니다. 입출력 예 a b return 3 5 12 3 3 3 5 3 12 기초적인 문제라 설명은 패스한다. #include #include #include using namespace std; long long solution(int a, int b) { long long answer = 0; if(a < b)..
-
[프로그래머스] 문자열 다루기 기본 (C++)알고리즘 & 자료구조/코딩테스트 2021. 2. 5. 21:10
문제 설명 문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 a234이면 False를 리턴하고 1234라면 True를 리턴하면 됩니다. 제한 사항 s는 길이 1 이상, 길이 8 이하인 문자열입니다. 입출력 예 s return a234 false 1234 true 더보기 본인 같은 경우는 문자열의 길이를 먼저 확인해주고, 아스키 코드를 이용해서 범위를 정해주어 확인해줬다. #include #include #include using namespace std; bool solution(string s) { bool answer = true; if(s.length() != 4 && s.length() != 6) { answer = fals..
-
[프로그래머스] 같은 숫자는 싫어! (C++)알고리즘 & 자료구조/코딩테스트 2021. 2. 3. 22:16
문제 설명 배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다. 단, 제거된 후 남은 수들을 반환할 때는 배열 arr의 원소들의 순서를 유지해야 합니다. 예를 들면, arr = [1, 1, 3, 3, 0, 1, 1] 이면 [1, 3, 0, 1] 을 return 합니다. arr = [4, 4, 4, 3, 3] 이면 [4, 3] 을 return 합니다. 배열 arr에서 연속적으로 나타나는 숫자는 제거하고 남은 수들을 return 하는 solution 함수를 완성해 주세요. 제한사항 배열 arr의 크기 : 1,000,000 이하의 자연수 배열 arr의 원소의 크기 : 0보다 크거나 ..
-
[프로그래머스] 가운데 글자 가져오기알고리즘 & 자료구조/코딩테스트 2021. 2. 3. 14:29
문제 설명 단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다. 재한사항 s는 길이가 1 이상, 100이하인 스트링입니다. 입출력 예 s return abcde c qwer we 간단한 문제였다. 더보기 나같은 경우는 홀수인 경우 와 짝수인 경우로 나눠서 그에 따른 문자 혹은 문자열 추출 방법을 구현해줬다. 하지만 다른분이 제출한 답을 보니 한줄만에도 구현이 가능한듯 하다.(참고하시길) #include #include #include using namespace std; string solution(string s) { string answer = ""; if(s.length() % 2 == 0) //짝수일때 { for(int..
-
[프로그래머스]K번째 수 (C++)알고리즘 & 자료구조/코딩테스트 2021. 2. 1. 20:22
문제 설명 배열 array의 i번째 숫자부터 j번째 숫자까지 자르고 정렬했을 때, k번째에 있는 수를 구하려 합니다. 예를 들어 array가 [1, 5, 2, 6, 3, 7, 4], i = 2, j = 5, k = 3이라면 array의 2번째부터 5번째까지 자르면 [5, 2, 6, 3]입니다. 1에서 나온 배열을 정렬하면 [2, 3, 5, 6]입니다. 2에서 나온 배열의 3번째 숫자는 5입니다. 배열 array, [i, j, k]를 원소로 가진 2차원 배열 commands가 매개변수로 주어질 때, commands의 모든 원소에 대해 앞서 설명한 연산을 적용했을 때 나온 결과를 배열에 담아 return 하도록 solution 함수를 작성해주세요. 제한사항 array의 길이는 1 이상 100 이하입니다. a..