Coding Test
-
[codility] OddOccurrencesInArray c++Coding Test/codility 2022. 4. 8. 16:02
문제 문제 풀이 #include #include #include int solution(std::vector &A) { // write your code in C++14 (g++ 6.2.0) sort(A.begin(), A.end()); for (int i = 0; i < A.size(); i += 2) { if (A[i] != A[i + 1]) { return A[i]; } } return 0; } #define OddOccurrencesInArray #ifdef OddOccurrencesInArray int main() { std::vector A = {9,3,9,3,9,7,9}; std::cout
-
[codility] CyclicRotation c++Coding Test/codility 2022. 4. 8. 15:31
문제 설명 크기가 A.size() 인 배열을 K 만큼 이동하라는 뜻이다. 문제 풀이 #include #include #include #include std::vector solution(std::vector &A, int K) { // write your code in C++14 (g++ 6.2.0) std::vector vecResult(A.size(), 0); for (int i = 0; i < A.size(); i++) { vecResult[(i + K) % A.size()] = A[i]; } return vecResult; } int main() { std::vector ArrayVec = { 3, 8, 9, 7, 6}; int K = 3; std::vector ArrayVec2 = {1,2,3,..
-
[codility] BinaryGap c++Coding Test/codility 2022. 4. 8. 11:39
문제 설명 10진수 N을 2진수로 바꾼 후, 1과 1 사이에 존재하는 0의 개수를 구하는 문제이다. ex, 1001 -> length : 2 1000010001 -> length : 4 , 3 -> 이 때는 더 큰 수를 return 한다 -> 4 10100 -> length : 1 100000 -> length : 0 -> 1이 하나만 있기 때문에 1과 1사이의 0이 없다. 문제 풀이 1. string 에 2진수 변환 저장 2. 1검사해서 index vector에 저장 3. index vector size가 1이라면 1이 한개라는 뜻이므로 return 0 4. index vector 에 1의 index가 저장되어 있기에 각 index에 빼기 연산을 하여 Binary Gap을 구한다. 5. max 함수를 ..
-
[프로그래머스] 가장 먼 노드 c++Coding Test/programmers 2021. 11. 3. 16:32
문제 설명 n개의 노드가 있는 그래프가 있습니다. 각 노드는 1부터 n까지 번호가 적혀있습니다. 1번 노드에서 가장 멀리 떨어진 노드의 갯수를 구하려고 합니다. 가장 멀리 떨어진 노드란 최단경로로 이동했을 때 간선의 개수가 가장 많은 노드들을 의미합니다. 노드의 개수 n, 간선에 대한 정보가 담긴 2차원 배열 vertex가 매개변수로 주어질 때, 1번 노드로부터 가장 멀리 떨어진 노드가 몇 개인지를 return 하도록 solution 함수를 작성해주세요. 제한 사항 노드의 개수 n은 2 이상 20,000 이하입니다. 간선은 양방향이며 총 1개 이상 50,000개 이하의 간선이 있습니다. vertex 배열 각 행 [a, b]는 a번 노드와 b번 노드 사이에 간선이 있다는 의미입니다. 입출력 예 n vert..
-
[프로그래머스] 가장 큰 수 c++Coding Test/programmers 2021. 10. 6. 22:14
문제 설명 0 또는 양의 정수가 주어졌을 때, 정수를 이어 붙여 만들 수 있는 가장 큰 수를 알아내 주세요. 예를 들어, 주어진 정수가 [6, 10, 2]라면 [6102, 6210, 1062, 1026, 2610, 2106]를 만들 수 있고, 이중 가장 큰 수는 6210입니다. 0 또는 양의 정수가 담긴 배열 numbers가 매개변수로 주어질 때, 순서를 재배치하여 만들 수 있는 가장 큰 수를 문자열로 바꾸어 return 하도록 solution 함수를 작성해주세요. 제한 사항 numbers의 길이는 1 이상 100,000 이하입니다. numbers의 원소는 0 이상 1,000 이하입니다. 정답이 너무 클 수 있으니 문자열로 바꾸어 return 합니다. 입출력 예 numbers return [6, 10, ..