이 문제에서는 양의 정수 배열과 숫자 k가 제공됩니다. 우리의 임무는 주어진 크기(k)의 겹치지 않는 두 하위 배열의 최대 합을 찾는 프로그램을 만드는 것입니다. 따라서 기본적으로 최대 합계가 있고 크기가 k인 두 개의 겹치지 않는(고유한) 하위 배열이 두 개 인쇄됩니다. 문제를 이해하기 위해 예를 들어보겠습니다. 입력 - array = {7, 1, 6, 9, 2} , k = 2 출력 - {7, 1} , {6, 9} 설명 - all subarrays of size 2. {7, 1} : sum = 7+1 = 8 {1, 6}
이 문제에서는 배열이 제공됩니다. 우리의 임무는 배열에서 최대 삼중항 합을 찾는 프로그램을 만드는 것입니다. 즉, 합이 최대인 세 개의 요소 집합을 찾는 것입니다. 문제를 이해하기 위해 예를 들어보겠습니다. 입력 - 배열 ={4, 6, 1, 2} 출력 − 12 설명 - all triplets are : (4, 6, 1) = 4+6+1 = 11 (4, 6, 2) = 4+6+1 = 12 (4, 1, 2) = 4+6+1 = 7 (6, 1, 2) = 4+6+1 = 9 The maximum triplet sum is 12 문제를 해
이 문제에서는 정수 배열과 정수 K가 주어집니다. 우리의 임무는 크기 K의 모든 하위 배열에서 중복 없이 최대 고유 요소를 찾는 프로그램을 만드는 것입니다. 문제를 이해하기 위해 예를 들어보겠습니다. 입력 - array = {4, 1, 1, 3, 3} k = 3 출력 - 4 3 1 설명 - Sub-array of size 3 Subarray {4, 1, 1}, max = 4 Subarray {1, 1, 3}, max = 3 Subarray {1, 3, 3}, max = 1 이 문제를 해결하기 위한 간단한 방법 중 하나는 두
이 문제에서는 [1,n] 범위의 n개의 정수 배열이 제공됩니다. 우리의 임무는 |arr[0] – arr[1] - + |arr[1] – arr[2] - + … +|arr[n – 2] – arr[ n – 1]. 문제를 이해하기 위해 예를 들어 보겠습니다. 입력 - 배열={1, 2, 3} 출력 - 3 설명 - max sum is |1-3|+|2-1| = 3 이 문제를 해결하기 위해 간단한 접근 방식은 배열에서 모든 순열을 만드는 것입니다. 그리고 순열에서 모든 값의 최대값을 찾습니다. 보다 효과적인 방법은 n의 각 값에 대한 최대
이 문제에서는 n개의 정수 배열이 제공됩니다. 우리의 임무는 |arr[i]-arr[j]|의 최대값을 찾는 프로그램을 만드는 것입니다. + |i-j|. 문제를 이해하기 위해 예를 들어보겠습니다. 입력 - 배열 ={4, 1, 2} 출력 - 4 설명 - |arr[0] - arr[1]|+|0-1| = |4-1| + |-1| = 3+1 = 4 |arr[0] - arr[2]|+|0-2| = |4-2| + |-2| = 2+2 = 4 |arr[1] - arr[2 ]|+|1-2| = |1-2| + |1-2| = 1+1 = 2 이 문제를 해
이 문제에서는 n 요소의 배열이 제공됩니다. 우리의 임무는 주어진 배열에 대해 arr[i]%arr[j]의 최대값을 찾는 프로그램을 만드는 것입니다. 따라서 기본적으로 배열의 두 요소를 나누는 동안 최대 나머지 값을 찾아야 합니다. 문제를 이해하기 위해 예를 들어보겠습니다. 입력 - 배열{3, 6, 9, 2, 1} 출력 − 6 설명 - 3%3 = 0; 3%6 = 3; 3%9 = 3; 3%2 = 1; 3%1 = 0 6%3 = 0; 6%6 = 0; 6%9 = 6; 6%2 = 0; 6%1 =0 9%3 = 0; 9%6 = 3; 9%
이 문제에서는 정수 배열이 제공됩니다. 우리의 임무는 배열의 모든 삼중항 중에서 XOR의 최대값을 만드는 것입니다. 문제를 이해하기 위해 예를 들어보겠습니다. 입력 - 배열 ={5, 6, 1, 2} 출력 − 6 설명 - All triplets are: 5^6^1 = 2 5^6^2 = 1 5^1^2 = 6 6^1^2 = 5 이 문제를 해결하기 위해 가능한 모든 삼중항의 XOR을 찾고 모든 삼중항의 최대값을 인쇄하는 직접적인 접근 방식이 있습니다. 배열에 많은 수의 요소가 있는 배열로 작업하는 경우에는 효과적이지 않습니다.
이 문제에서는 정수 n과 셀의 가중치를 포함하는 n X n 크기의 행렬이 제공됩니다. 우리의 임무는 행렬의 마지막 행의 모든 요소에서 끝나는 최대 가중치 경로를 찾는 프로그램을 만드는 것입니다. 경로를 찾는 동안 순회는 왼쪽 상단(0,0)에서 시작하고 유효한 이동은 아래쪽 대각선이며 왼쪽 이동은 허용되지 않습니다. 문제를 이해하기 위해 예를 들어보겠습니다. 입력 - n = 3 Mat[3][3] ={ {4, 3, 1} {5, 8, 9} {6, 7, 2}}
문제 설명 A와 B로만 구성된 문자열이 주어집니다. 임의의 문자를 토글하여 주어진 문자열을 다른 문자열로 변환할 수 있습니다. 따라서 주어진 문자열의 많은 변형이 가능합니다. 작업은 최대 가중치 변환의 가중치를 찾는 것입니다. 침의 무게는 아래 공식을 사용하여 계산됩니다 - Weight of string = Weight of total pairs + weight of single characters - Total number of toggles. 두 개의 연속 문자는 서로 다른 경우에만 쌍으로 간주됩니다. 한 쌍의 무
문제 설명 주어진 이진 트리에서 주어진 트리의 최대 너비를 구하는 함수를 작성하십시오. 트리의 너비는 모든 레벨의 너비의 최대값입니다. 아래 트리 고려 - 10 / \ 7 4 / \ \ 9 2 1 / \ 2 5 1. Widt
이 문제에서는 두 개의 양의 정수 n과 k가 제공됩니다. 우리의 임무는 최대 X 수를 사용하여 1에서 n 사이의 최대 xor를 찾는 것입니다. 문제를 이해하기 위해 예를 들어보겠습니다. 입력 - n =5, k =2 출력 - 7 설명 - elements till 5 is 1, 2, 3, 4, 5 Selecting all XOR pairs: 1^2 = 3, 1^3 = 2, 1^4 = 5, 1^5 = 4 2^3 = 4, 2^4 = 6, 2^5 = 7 3^4 = 7, 3^5 = 6 4^5 = 1 The maximum here is
문제 설명 [L, R] 범위가 주어지면 이 범위에서 XOR이 두 정수의 모든 가능한 선택 중에서 최대가 되도록 두 정수를 찾아야 합니다. 주어진 범위가 L =1이고 R =21이면 -31이 15와 16의 XOR이고 범위 내에서 최대이므로 출력은 31이 됩니다. 알고리즘 1. Calculate the (L^R) value 2. From most significant bit of this value add all 1s to get the final result 예 #include <bits/stdc++.h> using na
이 문제에서는 n X n 크기의 행렬이 제공됩니다. 우리의 임무는 전체 행 또는 전체 열의 최대 XOR 값을 계산하는 프로그램을 만드는 것입니다. 문제를 이해하기 위해 예를 들어보겠습니다. 입력 - N = 3 mat[N][N] = {{4, 9, 1} {2, 8, 3} {10, 12, 11}} 출력 - 13 설명 - Row1: 4^9^1 = 12 Row2: 2^8^3 = 9 Row3: 10^12^11 = 13 Col1: 4^2^10 = 12 Col2: 9^8^12 = 13 Col3: 1^3^11 = 9 여기에서 모든 행과 열
이 문제에서는 크기가 n*n인 2D 배열이 제공됩니다. 우리의 임무는 행렬의 평균과 중앙값을 C++로 출력하는 프로그램을 만드는 것입니다. 평균 설정된 날짜의 평균입니다. 행렬에서 평균은 행렬의 모든 요소의 평균입니다. 평균 =(행렬의 모든 요소의 합)/(행렬의 요소 수) 중앙값 정렬된 데이터 세트의 가장 중간 요소입니다. 이를 위해 행렬의 요소를 정렬해야 합니다. 중앙값은 다음과 같이 계산됩니다. n이 홀수이면 median =matrix[n/2][n/2] n이 짝수이면 중앙값 =((행렬[(n-2)/2][n-1])+(
이 문제에서는 n개의 정수 배열과 m개의 쿼리가 제공됩니다. 우리의 임무는 쿼리에 의해 주어진 범위의 평균의 적분 값(내림)을 계산하는 프로그램을 만드는 것입니다. 문제를 이해하기 위해 예를 들어보겠습니다. 입력 - array = {5, 7, 8, 9, 10} m = 2; [0, 3], [2, 4] 출력 - 7 9 이 문제를 해결하기 위해 두 가지 방법이 있습니다. 하나는 직접이고 다른 하나는 접두사 합계를 사용하는 것입니다. 직접 접근 방식에서는 각 쿼리에 대해 범위의 시작 인덱스에서 끝 인덱스까지 반복합니다. 그리고 배
이 문제에서 x와 y의 용량과 무한한 물의 공급을 가진 두 개의 용기가 주어졌습니다. 우리의 임무는 한 용기에서 정확히 1리터를 계산할 수 있는 프로그램을 만드는 것입니다. x와 y가 공소수라는 조건이 주어집니다. 공동 프라임 상대 소수, 상호 소수라고도 합니다. 1이 유일한 공약수인 두 수입니다. 따라서 이는 gcd(최대공약수 )은 1입니다. 여기에 용량 x의 V1 선박과 용량 y의 V2 선박이 있다고 가정해 보겠습니다. 이 두 용기를 사용하여 1리터를 측정하기 위해 우리는 물 공급에서 첫 번째 용기를 채운 다음 두 번째 용기에
이 문제에서 n개의 정수 배열이 주어지고 배열에 K개의 요소를 추가한 다음 결과 배열의 중앙값을 찾습니다. 주어진 조건에서 N+k는 홀수입니다. 문제를 이해하기 위해 예를 들어보겠습니다. 입력 - array = {23, 65, 76, 67} ; k =1 출력 - 67 이 문제를 해결하기 위해 주어진 요소를 오름차순으로 정렬한 다음 배열 끝에 k개의 요소를 추가합니다. 즉, k개의 더 큰 요소를 취합니다. n+k가 홀수라는 조건이 주어집니다. 따라서 중앙값은 (n+k)/2 공식을 사용하여 계산할 수 있습니다. . 예시 중앙
문제 설명 데이터 스트림에서 정수를 읽는다고 가정합니다. 효율적인 방법으로 읽은 요소의 중앙값 찾기 중앙값 - 10 중앙값 - 15 중앙값 - 20 등을 읽은 후... 알고리즘 1. Use a max heap on left side to represent elements that are less than effective median, and a min heap on right side to represent elements that are greater than effective median 2. A
이 문제에서는 지속적으로 정수를 읽는 데이터 스트림이 제공됩니다. 우리의 임무는 요소를 읽고 이러한 요소의 중앙값을 계산하는 프로그램을 만드는 것입니다. 중앙값 배열의 중간 요소는 정렬된 시퀀스의 중간 요소입니다(오름차순 또는 내림차순일 수 있음). 중앙값 계산 홀수 개수의 경우 중앙값은 중간 요소입니다. 짝수 개수의 경우 중앙값은 중간 요소 2개의 평균입니다. 문제를 이해하기 위해 예를 들어보겠습니다. 입력 - 3, 65, 12, 20, 1 각 입력에서 Input - 3 : sequence -(3) : median
이 튜토리얼에서는 XOR이 홀수인 인접 노드의 쌍의 수를 찾는 프로그램에 대해 논의할 것입니다. 이를 위해 이진 트리가 제공됩니다. 우리의 임무는 XOR이 홀수인 인접 요소 쌍의 수를 계산하는 것입니다. 예시 #include <iostream> using namespace std; //node structure of tree struct Node { int data; struct Node *left, *right; }; //finding the pairs whose XOR