[TIL] 2023.08.23 Programmers_배열의 길이를 2의 거듭제곱으로 만들기
배열의 길이를 2의 거듭제곱으로 만들기 문제 설명 정수 배열 arr이 매개변수로 주어집니다. arr의 길이가 2의 정수 거듭제곱이 되도록 arr 뒤에 정수 0을 추가하려고 합니다. arr에 최소한의 개수로 0을 추가한 배열을 return 하는 solution 함수를 작성해 주세요. 입출력 예 arr result [1, 2, 3, 4, 5, 6] [1, 2, 3, 4, 5, 6, 0, 0] [58, 172, 746, 89] [58, 172, 746, 89] 입출력 예 #1 예제 1번의 arr의 길이는 6입니다. arr의 길이를 2의 정수 거듭제곱으로 만드는 방법은 0을 2개, 10개, 26개,..., 추가하는 방법이 있고 그중 최소한으로 0을 추가하는 방법은 2개를 추가하는 것입니다. 따라서 [1, 2, ..
2023. 8. 24.
[TIL] 2023.08.13 Programmers_빈 배열에 추가, 삭제하기
빈 배열에 추가, 삭제하기 문제 설명 아무 원소도 들어있지 않은 빈 배열 X가 있습니다. 길이가 같은 정수 배열 arr과 boolean 배열 flag가 매개변수로 주어질 때, flag를 차례대로 순회하며 flag[i]가 true라면 X의 뒤에 arr[i]를 arr[i] × 2 번 추가하고, flag[i]가 false라면 X에서 마지막 arr[i]개의 원소를 제거한 뒤 X를 return 하는 solution 함수를 작성해 주세요. 입출력 예 arr flag result [3, 2, 4, 1, 3] [true, false, true, false, false] [3, 3, 3, 3, 4, 4, 4, 4] 예제 1번에서 X의 변화를 표로 나타내면 다음과 같습니다 i flag[i] arr[i] X [] 0 tru..
2023. 8. 13.
[TIL] 2023.08.11 Programmers_날짜 비교하기
날짜 비교하기 문제 설명 정수 배열 date1과 date2가 주어집니다. 두 배열은 각각 날짜를 나타내며 [year, month, day] 꼴로 주어집니다. 각 배열에서 year는 연도를, month는 월을, day는 날짜를 나타냅니다. 만약 date1이 date2보다 앞서는 날짜라면 1을, 아니면 0을 return 하는 solution 함수를 완성해 주세요. 입출력 예 date1 date2 result [2021, 12, 28] [2021, 12, 29] 1 [1024, 10, 24] [1024, 10, 24] 0 입출력 예 #1 date1이 date2보다 하루 앞서기 때문에 1을 return 합니다. 입출력 예 #2 date1과 date2는 날짜가 서로 같으므로 date1이 더 앞서는 날짜가 아닙니다..
2023. 8. 11.
[TIL] 2023.08.02 Programmers_특별한 이차원 배열 2
특별한 이차원 배열 2 문제 설명 n × n 크기의 이차원 배열 arr이 매개변수로 주어질 때, arr이 다음을 만족하면 1을 아니라면 0을 return 하는 solution 함수를 작성해 주세요. 0 ≤ i, j < n인 정수 i, j에 대하여 arr[i][j] = arr[j][i] 입출력 예 arr result [[5, 192, 33], [192, 72, 95], [33, 95, 999]] 1 [[19, 498, 258, 587], [63, 93, 7, 754], [258, 7, 1000, 723], [587, 754, 723, 81]] 0 입출력 예 #1 예제 1번에서 문제의 조건이 잘 보이도록 표를 만들면 다음과 같습니다. 조건을 만족하므로 1을 return 합니다. i j arr[i][j] ar..
2023. 8. 2.