[python] 문자열 내 마음대로 정렬하기(연습문제)
문제는 위와 같다. 목표는 입력받은 문자열을 원소로 가지는 배열 strings를 입력받은 인덱스 번호 n번째 문자를 기준으로 오름차순 정렬한 배열을 반환한다. 주의할 점은 만약 기준 문자가 같을 경우 해당 문자는 사전순으로 배열해야 한다. strings가 [sun, bed, car]이고 n이 1이라면 인덱스 번호 1인 문자 u, e, a를 기준으로 오름차순 정렬하므로 a, e, u 순서가 되므로 반환되는 배열은 [car, bed, sun]이 된다. strings가 [abc, abe, abd]이고 n이 1이라면 기준이 되는 문자들이 b로 모두 같다 따라서 이때 기준 문자가 같은 문자열들은 사전순으로 정렬해야 하므로 abc, abd, abe 가된다. 설계 및 구현 구현을 위해 주어진 함수는 정렬할 배열 st..
2020. 3. 22.
[python] 같은 숫자는 싫어(연습문제)
문제는 위와 같다. 입력받은 배열 arr의 원소들을 입력받은 divisor로 나누었을 때 나누어 떨어지는 값을 오름차순으로 반환하고 나누어 떨어지는 수가 없다면 [-1]을 반환하면 된다. 예제를 확인해보면 배열이 [5, 9, 7, 10], divisor가 5로 입력받을 경우 5로 나누어 떨어지는 원소는 5, 10이 있다 따라서 해당 원소를 오름차순으로 배열에 넣어 반환하면 [5, 10]이 된다. [3, 2, 6], 10일 경우 10으로 나누었을 때 나누어 떨어지는 수가 없으므로 [-1]을 반환한다. 설계 및 구현 구현을 위해 주어진 함수는 간단하게 arr, divisor를 매개변수로 받는 함수이다. 해당 문제는 특별히 구현에 대해 고민할 필요가 없이 arr의 각 원소들을 divisor로 나누어 나머지가 ..
2020. 3. 20.
[C++] 같은 숫자는 싫어(연습문제)
문제는 위와 같다. 입력받은 배열에서 연속적으로 나타나는 숫자를 하나만 남기고 전부 제거하면 된다. 단 순서를 유지하여 연속된 숫자를 제거한 배열을 반환해야 한다. 따라서 [1, 1, 2, 2, 1, 1] 이란 배열을 입력받으면 [1, 2]가 아니라 [1, 2, 1]을 반환해야 한다. 예제를 확인해보면 [1, 1, 3, 3, 0, 1, 1]을 입력받는다면 연속으로 나오는 숫자를 하나씩 제거하여 [1, 3, 0, 1]을 반환하는 것을 확인할 수 있다. 연속된 숫자가 아닌 0은 그대로 반환해 주면 된다. 설계 및 구현 구현을 위해 주어진 함수는 int타입을 가지는 arr 벡터를 매개변수로 입력받아 int타입을 가지는 벡터를 반환한다. 해당 문제를 해결하기 위한 설계는 앞서 파이썬을 사용한 풀이에서 진행했으므..
2020. 3. 18.