Sizeof 연산자는 우리가 전달하는 데이터 구조 또는 데이터 유형의 크기를 계산하는 데 사용되는 C 언어에서 가장 많이 사용되는 연산자 중 하나입니다. sizeof 연산자는 부호 없는 정수형을 반환하며, 이 연산자는 원시 데이터형과 복합 데이터형에 모두 적용할 수 있다. sizeof 연산자를 데이터 유형에 직접 사용할 수 있고 그것이 차지하는 메모리를 알 수 있습니다 - 예 #include <bits/stdc++.h> using namespace std; int main() { cout <
프로그래머라면 코드를 작성합니다. 코드를 작성하는 경우 함수를 사용합니다. 함수를 사용하는 경우 모든 함수에서 return 및 exit 문을 사용합니다. 따라서 이 기사에서는 return 문과 exit 문에 대해 설명하고 차이점에 대해 설명합니다. C++에서 return은 실행 흐름의 제어를 호출하는 함수에 반환하는 문입니다. Exit 문은 사용된 지점에서 프로그램을 종료합니다. int main() 여기에서 프로그램 실행이 시작됩니다. 프로그램은 main() 함수에서 실행되며 반환 유형 대신 int가 있으므로 일부
주어진 문제에서 배열이 주어지고 반전 알고리즘을 사용하여 d 요소만큼 배열을 회전해야 합니다. 예를 들면 - Input : arr[] = [1, 2, 3, 4, 5, 6, 7], d = 2 Output : arr[] = [3, 4, 5, 6, 7, 1, 2] Explanation : As you can see we have to rotate this array by d = 2 but our main task is to achieve this by using a reversal technique. 우리는 반전 기술에 의한 배열의 회
이 기사에서는 주어진 배열을 k-요소만큼 오른쪽으로 회전시키는 Reversal 알고리즘을 이해할 것입니다. 예를 들어 - Input : arr[ ] = { 4, 6, 2, 6, 43, 7, 3, 7 }, k = 4 Output : { 43, 7, 3, 7, 4, 6, 2, 6 } Explanation : Rotating each element of array by 4-element to the right gives { 43, 7, 3, 7, 4, 6, 2, 6 }. Input : arr[ ] = { 8, 5, 8, 2, 1, 4,
이 기사에서는 이중 연결 목록이 있으며 C++에서 이중 연결 목록을 뒤집는 다양한 접근 방식을 설명합니다. 예를 들어 - Input : {1, 2, 3, 4} Output : {4, 3, 2, 1} 일반적으로 한 가지 접근 방식이 생각나지만 우리는 두 가지 접근 방식, 즉 일반 접근 방식과 비정통 접근 방식을 사용합니다. 정상적인 접근 이 접근 방식에서는 목록을 살펴보고 목록을 살펴보면서 목록을 뒤집습니다. 예 #include <bits/stdc++.h> using namespace std; class Node {
이 문제에서는 연결 리스트의 선두에 대한 포인터와 정수 k가 주어진다. k 크기의 그룹에서는 연결 목록을 반대로 해야 합니다. 예를 들어 - 입력 :1 2 3 4 5 (이중 연결 리스트), k =3출력 :3 2 1 5 4 해결책을 찾기 위한 접근 방식 이 문제에서는 이 문제를 해결하기 위해 재귀 알고리즘을 만들 것입니다. 이 접근 방식에서는 재귀를 사용하고 이를 사용하여 문제를 해결할 것입니다. 예시 #include prev =TMP; 리턴 헤드; // 헤드에 대한 포인터 반환}// 주어진 목록을 인쇄하는 함수 pr
이 기사에서 우리는 단일 연결 목록을 다루며 작업은 k 그룹의 목록을 뒤집는 것입니다. 예를 들어 - Input: 1->2->3->4->5->6->7->8->NULL, K = 3 Output: 3->2->1->6->5->4->8->7->NULL Input: 1->2->3->4->5->6->7->8->NULL, K = 5 Output: 5->4->3->2->1->8 이 문제에
이 기사에서는 단일 연결 목록을 사용하여 링크를 역전시켜야 합니다. 우리의 임무는 주어진 단일 연결 리스트를 뒤집을 수 있는 함수를 만드는 것입니다. 예를 들어 Input: Following Linked list : 1->2->3->4->NULL Output: After processing of our function: 4->3->2->1->NULL 해결책을 찾기 위한 접근 방식 연결 목록을 뒤집는 다양한 접근 방식이 있습니다. 일반적으로 목록을 탐색하는 동안 목록을 탐색하고 역순으로
PL/SQL은 SQL의 기능과 절차 명령을 결합한 블록 구조 언어입니다. 이 기사에서는 PL/SQL에서 주어진 숫자를 반전시키는 프로그램에 대해 논의할 것입니다. 예를 들어 - Input : 98765 Output : 56789 Explanation : reverse number of 98765 is 56789. Input : 56784 Output : 48765 Explanation Reverse number of ‘56784’ is ‘48765’. 해결책을 찾기 위한 접근 방식 nu
Pl/SQL은 SQL의 기능과 절차적 명령을 결합한 블록 구조 언어입니다. 이 기사에서는 PL/SQL에서 주어진 문자열을 반전시키는 프로그램에 대해 논의할 것입니다. 예를 들어 - Input : taerGsIdoG Output : GodIsGreat Explanation : reverse string of “taerGsIdoG” is “GodIsGreat”. Input : LQS Output : SQL Explanation Reverse string of “LQS”
이 문제에서 정수 값 N이 주어집니다. 우리의 임무는 주어진 급수의 n번째 항을 찾는 것입니다 - 0, 0, 2, 1, 4, 2, 6, 3, 8, 4, 10, 5, 12, 6, 14, 7, 16, 8, 18, 9, 20, 10… 문제를 이해하기 위해 예를 들어보겠습니다. Input − N = 6 Output − 2 솔루션 접근 방식 급수의 N번째 항을 찾으려면 급수를 자세히 관찰해야 합니다. 2개의 급수와 급수의 홀수항과 짝수항을 혼합한 것입니다. 각각을 살펴보겠습니다. 짝수 위치에서 - T(2)
이 문제에서 정수 값 N이 주어집니다. 우리의 임무는 급수의 n번째 항을 찾는 것입니다 - 0, 8, 64, 216, 512, 1000, 1728, 2744… 문제를 이해하기 위해 예를 들어 보겠습니다. Input: N = 6 Output: 1000 솔루션 접근 방식 급수의 N번째 항을 찾으려면 급수를 자세히 관찰해야 합니다. 급수는 첫 번째 항이 0인 짝수의 세제곱입니다. 따라서 시리즈는 다음과 같이 디코딩될 수 있습니다. - [0]3 , [2]3 , [4]3 , [6]3 , [8]3 , [10]3 … i번째 기간
이 문제에서 정수 값 N이 주어집니다. 우리의 임무는 급수의 n번째 항을 찾는 것입니다 - 9, 45, 243, 1377, 8019, … 문제를 이해하기 위해 예를 들어보겠습니다. Input : N = 4 Output : 1377 솔루션 접근 방식 문제를 찾는 간단한 솔루션은 관찰 기술을 사용하여 N번째 항을 찾는 것입니다. 시리즈를 관찰하면 다음과 같이 공식화할 수 있습니다. - (11 + 21 )*31 + (12 + 22 )*32 + (13 + 23 )*33 … + (1n + 2n )*3n 예시 솔루션 작동을 설명
이 문제에서는 각 요소가 상자 더미(각 단위 높이)를 나타내는 배열 arr[]이 제공됩니다. 우리의 임무는 제거할 상자의 수를 찾는 것입니다. . 사람은 상자 더미의 높이에서 배열의 인덱스 0에 서 있고 배열의 끝으로 이동해야 합니다. 한 더미에서 다음 더미로 이동하는 조건은 다음 더미로 점프하는 것입니다. 점프는 다음 더미의 높이가 같거나 낮은 경우에만 가능합니다. 다음 더미의 높이가 더 높으면 높이가 같아질 때까지 다음 더미에서 상자를 제거해야 합니다. 첫 번째 상자에서 마지막 상자로 이동하는 동안 제거될 총 상자 수를 찾아
이 문제에서 우리는 모두 0으로 구성된 배열의 크기인 숫자 N이 주어지고 Q는 다음 유형의 각각을 쿼리합니다 - 이 쿼리는 s에서 e까지(둘 다 포함) 모든 요소를 val로 업데이트합니다. 우리의 임무는 주어진 연산을 q번 적용한 후 배열에서 다른 숫자의 수를 찾는 것입니다. 문제를 이해하기 위해 예를 들어보겠습니다. Input : N = 6, Q = 2 Q1 = update(1, 4, 3) Q2 = update(0, 2, 4) Output : 2 설명 초기 배열, arr[] ={0, 0, 0, 0, 0, 0} a
이 문제에서는 숫자 N이 주어집니다. 우리의 임무는 [1, n] 범위에 있는 모든 숫자의 약수를 찾는 것입니다. 문제를 이해하기 위해 예를 들어보겠습니다. Input : N = 7 Output : 1 2 2 3 2 4 2 솔루션 접근 방식 문제에 대한 간단한 해결책은 1에서 N까지 시작하여 모든 숫자에 대해 제수를 세고 인쇄하는 것입니다. 예시 1 솔루션 작동을 설명하는 프로그램 #include <iostream> using namespace std; int countDivisor(int N){ &n
이 문제에서는 모두 소문자로 된 문자 배열이 제공됩니다. 우리의 임무는 배열에서 접두어의 최대 발생입니다. . 발생 횟수가 최대인 비어 있지 않은 접두사의 발생 횟수를 계산해야 합니다. 문제를 이해하기 위해 예를 들어보겠습니다. Input : string = “xyyzkxyyzk” Output : 2 해결 방법 논리는 배열의 접두사가 항상 분명히 문자열의 첫 번째 문자를 포함해야 하고 반복되는 항목도 포함해야 한다는 것을 시각화하는 것입니다. 그리고 문자열의 첫 번째 문자는 분명히 문자 수가 가장 적은
이 문제에서는 크기가 n이고 숫자 S인 배열 arr[]이 제공됩니다. 우리의 임무는 수정된 배열의 최소값 중 가능한 최대값을 찾는 것입니다. . 다음은 배열을 수정하는 규칙입니다. 수정 전과 수정 후의 배열 요소 합계의 차이는 S여야 합니다. 수정된 배열의 음수 값은 허용되지 않습니다. 배열을 수정한 경우 배열의 최소값을 최대화해야 합니다. 배열의 수정은 배열의 요소를 늘리거나 줄이는 수행할 수 있습니다. . 이러한 제약 조건을 사용하여 새 배열을 찾고 배열의 가장 작은 요소에 대해 최대화된 값을 반환해
이 문제에서는 N개의 노드 그래프가 제공됩니다. 우리의 임무는 수정된 배열의 최소값에서 가능한 최대값을 찾는 것입니다. 그래프의 경우 공통 가장자리를 공유하는 왼쪽에 최소 1개의 노드가 있는 유도 수인 노드의 순열이 있습니다. 문제를 이해하기 위해 예를 들어보겠습니다. Input : N = 4, edge = {{1, 2}, {2, 3}, {3, 4}, {4, 1}} Output : 3 솔루션 접근 방식 문제에 대한 간단한 해결책은 한 노드에서 모든 인접 노드를 방문하는 트리를 순회하는 것입니다. 연결된 노드 수의 공식을 사
이 문제에서 양수 1이 주어집니다. 우리의 임무는 정렬된 순서로 N번째 바이너리 문자열을 찾는 것입니다. 사전순으로 정렬된 두 개의 기호 a와 b만 사용하여 생성된 무한 문자열 목록에서 N번째 문자열을 찾아야 합니다. 목록은 - a, b, aa, ab, ba, bb, aaa, aab, aba, … 문제를 이해하기 위해 예를 들어보겠습니다. Input : N = 8 Output : aab 해결 방법 문제에 대한 간단한 해결책은 루프를 사용하여 모든 n개의 문자열을 생성하는 것입니다. 그런 다음 N번째 문자열을 반환합니다.