Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++
  • C 프로그래밍
  •   
  • C++
  •   
  • Redis
  •   
  • BASH 프로그래밍
  •   
  • Python
  •   
  • Java
  •   
  • 데이터 베이스
  •   
  • HTML
  •   
  • JavaScript
  •   
  • 프로그램 작성
  •   
  • CSS
  •   
  • Ruby
  •   
  • SQL
  •   
  • IOS
  •   
  • Android
  •   
  • MongoDB
  •   
  • MySQL
  •   
  • C#
  •   
  • PHP
  •   
  • SQL Server
  • C++

    1. C++의 유효한 괄호

      표현식이 있다고 가정합니다. 표현식에는 일부 괄호가 있습니다. 괄호의 균형이 맞는지 확인해야 합니다. 괄호의 순서는 (), {}, []입니다. 두 개의 문자열이 있다고 가정합니다. ()[(){()}]는 유효하지만 {[}]는 유효하지 않습니다. 작업은 간단합니다. 우리는 이것을 하기 위해 스택을 사용할 것입니다. 솔루션을 얻으려면 다음 단계를 따라야 합니다 − 소진될 때까지 표현식을 탐색합니다. 현재 문자가 (, { 또는 [, 스택에 푸시와 같은 여는 대괄호인 경우) 현재 문자가 ), } 또는 ]와 같은 닫는 대괄호

    2. C++에서 계단 오르기

      n개의 계단이 있습니다. 한 사람은 1~n계단으로 갑니다. 한 걸음에 얼마나 많은 계단을 넘을 수 있는지도 나와 있습니다. 이 정보를 가지고 n번째 계단으로 갈 수 있는 가능한 방법을 찾아야 합니다. 각 단계에서 최대 두 개의 계단을 건널 수 있다고 가정해 보겠습니다. 따라서 이 문제를 해결하기 위해 재귀 관계를 찾을 수 있습니다. (n-1)번째 계단이나 (n-2)번째 계단에서 n번째 계단으로 이동할 수 있습니다. 그래서 way(n) =way(n-1) + way(n-2). 계단의 수를 10이라고 하고 한 단계에서 점프할 수 있는

    3. C++에서 파스칼의 삼각형

      파스칼의 삼각형은 이항 계수의 배열입니다. 맨 위 행은 n=0으로 번호가 매겨지고 각 행에는 왼쪽부터 k =0으로 번호가 매겨집니다. 각 숫자는 이전 행과 현재 셀의 정확히 맨 위에 있는 두 개의 숫자를 더하여 찾습니다. 또한 행 번호 n과 열 번호 k에 대해 (𝑛𝑘)를 찾아 구성됩니다. 입력이 10이라고 가정하면 출력은 다음과 같습니다. - 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 1 6 15 20 15 6 1 1 7 21 35 35 21 7 1 1 8 28 56 280 36 84 12

    4. C++의 주요 요소

      7/2를 볼 수 있습니다. 배열에서 x의 발생 횟수를 셀 수 있으며, 숫자가 n/2보다 크면 대답은 참이고 그렇지 않으면 거짓입니다. 예시(C++) #include <iostream> #include <stack> using namespace std; bool isMajorityElement(int arr[], int n, int x){    int freq = 0;    for(int i = 0; i<n; i++){       if(arr[

    5. C++의 Excel 시트 열 번호

      엑셀 열 번호는 알파벳으로 되어 있습니다. A에서 시작하여 Z 다음에는 AA, AB, ZZ, 다시 AAA, AAB, ZZZ 순으로 진행됩니다. 따라서 열 1은 A, 열 27은 Z입니다. 여기에서 열 수가 지정된 경우 열 문자를 얻는 방법을 살펴보겠습니다. 따라서 열 번호가 80이면 CB가 됩니다. 숫자 n이 있고 그 값이 28이라고 가정하면 26으로 알림을 받아야 합니다. 나머지가 0이면 숫자는 26, 52 등입니다. 그런 다음 출력 문자열에 Z를 넣습니다. n의 값은 n/26 – 1이 됩니다. 나머지가 0이 아니면 문자열에 그에

    6. C++의 계승 후행 0

      여기에서는 임의의 숫자의 계승 결과에 대해 후행 0의 수를 계산하는 방법을 볼 것입니다. 따라서 n =5이면 5입니다! =120. 뒤에 0이 하나만 있습니다. 20을 위해! 그것은 20으로 4개의 0이 될 것입니다! =2432902008176640000. 가장 쉬운 방법은 계승을 계산하고 0을 계산하는 것입니다. 그러나 이 접근 방식은 n의 큰 값에 대해 실패합니다. 그래서 우리는 다른 접근 방식을 따를 것입니다. 소인수가 2와 5이면 후행 0이 있을 것입니다. 2와 5를 계산하면 결과를 얻을 수 있습니다. 이를 위해 우리는 이

    7. C++의 못생긴 숫자

      못생긴 숫자는 소인수가 2, 3 또는 5인 숫자입니다. 1부터 15까지 11개의 못생긴 숫자 1, 2, 3, 4, 5, 6, 8, 9, 10, 12, 15가 있습니다. 숫자 7 , 11, 13은 소수이기 때문에 못생긴 것이 아닙니다. 숫자 14는 소인수에 7이 올 것이기 때문에 못생긴 것이 아닙니다. 10번째 못생긴 숫자를 확인하고 싶다고 가정해 봅시다. 값은 12입니다. 아이디어를 얻기 위해 다음 알고리즘을 살펴보겠습니다 - 알고리즘 getUglyNumbers(n) 입력 − 용어의 수. 출력 − n번째 못생긴 숫자를 찾습

    8. 범위 합계 쿼리 - C++의 불변

      정수 배열이 있다고 가정합니다. 인덱스 i에서 j까지 존재하는 요소의 합을 찾아야 합니다. 배열은 변경할 수 없으므로 요소가 변경되지 않으며 이러한 쿼리가 여러 개 있을 것이라는 두 가지 사항을 염두에 두어야 합니다. 따라서 많은 수의 쿼리에 대한 실행 시간에 신경을 써야 합니다. 배열이 A =[5, 8, 3, 6, 1, 2, 5]와 같다고 가정하고 쿼리가 (A, 0, 3)이면 5 + 8 + 3 + 6 =22가 됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − 배열 B 하나를 가져옵니다. B[i]는 0에서 i까지의 요

    9. C++의 N번째 트리보나치 수

      값 n이 있다고 가정하면 n번째 트리보나치 수를 생성해야 합니다. 트리보나치 수는 피보나치 수와 유사하지만 여기서는 이전 항 3개를 추가하여 항을 생성합니다. T(n)을 생성한다고 가정하면 공식은 다음과 같습니다. - T(n) = T(n - 1) + T(n - 2) + T(n - 3) 시작하는 처음 몇 개의 숫자는 {0, 1, 1}입니다. 이 알고리즘을 따르면 해결할 수 있습니다 - 알고리즘 • first := 0, second := 1, third := 1 • for i in range n – 3,

    10. C++의 요일

      날짜(일, 월, 연도)가 있다고 가정합니다. 이 날짜로부터 주어진 날짜의 요일을 찾아야 합니다. 이를 해결하기 위해 Zeller의 알고리즘을 사용합니다. Zeller의 알고리즘을 사용하여 요일을 구하는 공식은 여기 𝑤=$$\l그룹 d+\lfloor \frac{13(m+1)}{5} \rfloor+y+\lfloor\frac{y}{4} \rfloor+\lfloor\frac{c}{4} \rfloor +5c \r그룹 모드 7$$ 수식에 일부 변수가 포함되어 있습니다. 그들은 - d − 날짜의 날짜입니다. m - 월 코드입니다. 3~

    11. C++를 사용한 산술 진행에서 누락된 숫자

      산술 진행의 요소를 순서대로 나타내는 배열이 있다고 가정합니다. 하나의 요소가 누락되었습니다. 누락된 요소를 찾아야 합니다. 따라서 arr =[2, 4, 8, 10, 12, 14]인 경우 6이 없기 때문에 출력은 6입니다. 이진 검색을 사용하여 이 문제를 해결할 수 있습니다. 중간 요소로 이동한 다음 중간과 중간 옆의 차이가 diff와 같은지 확인합니다. 그렇지 않은 경우 누락된 요소는 인덱스 mid와 mid + 1 사이에 존재합니다. 중간 요소가 AP의 n/2번째 요소이면 누락된 요소는 오른쪽 절반에 있고 그렇지 않으면 왼쪽 절

    12. C++에서 정렬 및 회전된 배열의 최대 요소

      설명 알 수 없는 지점에서 회전하는 고유한 요소의 정렬된 배열이 주어지면 작업은 그 안에 있는 최대 요소를 찾는 것입니다. 예시 입력 배열이 {30, 40, 50, 10, 20}인 경우 최대 요소는 50입니다. 알고리즘 최대 요소는 그 다음이 그보다 작은 유일한 요소입니다. 다음으로 작은 요소가 없으면 회전이 없습니다. 즉, 마지막 요소가 최대값입니다. 중간 요소에 대한 이 조건을 mid – 1 및 mid + 1에 있는 요소와 비교하여 확인합니다. 최대 요소가 mid – 1 및 mid + 1에 있는 요소와 비교하여 확인합니다.

    13. C++에서 pthread를 사용하는 매우 큰 배열의 최대 요소

      문제 설명 매우 큰 정수 배열이 주어지면 멀티스레딩을 사용하여 배열 내에서 최대값 찾기 예시 입력 배열이 {10, 14, -10, 8, 25, 46, 85, 1673, 63, 65, 93, 101, 125, 50, 73, 548}이면 이 배열의 최대 요소는 1673입니다. 알고리즘 배열 크기를 total_elements라고 합시다 N개의 스레드 생성 각 스레드는 (total_elementes/N) 배열 요소를 처리하고 여기에서 최대 요소를 찾습니다. 마지막으로 각 스레드에서 보고한 최대값에서 최대값을 계산합니다. 예시 #i

    14. C++에서 배열의 최대 평형 합계

      문제 설명 주어진 배열 arr[]. arr[]에서 인덱스 i에 대한 접미사 합이기도 한 접두사 합의 최대값을 찾습니다. 예시 입력 배열이 -인 경우 Arr[] ={1, 2, 3, 5, 3, 2, 1} 그러면 출력은 −와 같이 11입니다. 접두어 합계 =arr[0..3] =1 + 2 + 3 + 5 =11 및 접미사 합계 =arr[3..6] =5 + 3 + 2 + 1 =11 알고리즘 배열을 탐색하고 배열 presum[]의 각 인덱스에 대한 접두사 합계를 저장합니다. 여기서 presum[i]는 하위 배열 arr[0..i]의 합

    15. C++에서 기본 데이터 유형과 파생 데이터 유형의 차이점

      프로그래밍에서 데이터 유형은 사용자가 사용하려는 데이터의 유형과 특성을 나타냅니다. 컴파일러나 인터프리터가 처리할 데이터 유형이며 메인 메모리에 해당 저장 위치를 ​​제공합니다. 이제 데이터의 특성에 따라 데이터 유형은 크게 기본 데이터 유형과 파생 데이터 유형의 두 가지 유형이 있습니다. 이 두 데이터 유형 모두 프로그래밍에 사용되며 데이터에 대한 비즈니스 로직을 구현해야 할 때 똑같이 중요합니다. 다음은 기본 데이터 유형과 파생 데이터 유형 간의 중요한 차이점입니다. Sr. 아니요. 키 기본 데이터 유형 파생 데이터 유형

    16. C++에서 회문의 순열인 최대 짝수 길이 하위 문자열

      문제 설명 주어진 문자열이 팰린드롬으로 배열될 수 있는 하위 문자열의 최대 길이를 찾는 것이 작업입니다. 예시 입력 문자열 =5432112356이면 최대 회문 부분 문자열이 321123이고 길이가 6이므로 답은 6입니다. 알고리즘 하위 문자열의 길이가 홀수이면 최종 솔루션에서 고려할 수 없습니다. 하위 문자열의 길이가 짝수이면 해당 하위 문자열의 각 문자가 짝수 번 발생해야 사전 수를 사용하여 수행할 수 있는 경우에만 가능한 솔루션이 될 수 있습니다. 각 문자가 짝수번 나오는지 확인합니다. 그렇다면 가능한 솔루션 중 하나로 포

    17. C++에서 승자가 플레이한 최대 게임 수

      문제 설명 토너먼트를 하는 N명의 플레이어가 있습니다. 승자가 할 수 있는 최대 게임 수를 찾아야 합니다. 이 토너먼트에서는 두 명의 플레이어가 플레이한 게임 간의 차이가 1개 이하인 경우에만 서로 대결할 수 있습니다. 예시 3명의 플레이어가 있는 경우 다음과 같이 승자를 결정하기 위해 2개의 게임이 필요합니다 - 게임 – 1:플레이어 1 대 플레이어 2 게임 - 2:플레이어 2 대 게임 - 1의 승자 알고리즘 우선 승자가 x 게임을 플레이하는 데 필요한 최소 플레이어 수를 계산하여 이 문제를 해결할 수 있습니다. 이것이

    18. C++에서 배열 값의 삼각형 배열의 최대 높이

      문제 설명 배열이 주어지면 모든 (i+1)th 수준은 이전 수준보다 더 큰 합계를 가진 더 많은 요소를 포함합니다. 예시 입력 배열이 {40, 100, 20, 30}이면 답은 −와 같이 2입니다. 피라미드의 맨 아래 수준에는 100과 20이 있고 피라미드의 상위 수준에는 40 또는 30이 있습니다. 알고리즘 우리의 솔루션은 피라미드에 대해 가능한 최대 높이 h가 있는 경우 ( h * (h + 1) ) / 2개의 요소가 배열에 있어야 한다는 논리에 있습니다. 예시 #include <bits/stdc++.h> usin

    19. C++에서 못생긴 숫자가 있는 하위 배열의 최대 길이

      문제 설명 N개의 요소(0 ≤ arr[i] ≤ 1000)의 배열 arr[]이 제공됩니다. 작업은 못생긴 숫자만 포함하는 하위 배열의 최대 길이를 찾는 것입니다. 못생긴 숫자는 소인수가 2, 3 또는 5뿐인 숫자입니다. 예를 들어 아래는 시리즈의 몇 가지 숫자입니다:1, 2, 3, 4, 5, 6, 8, 9, 10, 12, 15,… 예시 입력 배열이 {1, 2, 7, 9, 120, 810, 374}이면 답은 −와 같이 3입니다. 못생긴 숫자 sis {9, 120, 810}의 가능한 가장 긴 하위 배열 알고리즘 unordere

    20. C++에서 Q번째 사람의 최대 막대 길이

      문제 설명 배열에서 n개의 막대 길이가 주어집니다. 누군가가 막대를 선택하면 가장 긴 막대의 절반(또는 (최대 + 1) / 2 )을 할당하고 나머지 부분(최대 – 1) / 2를 다시 넣습니다. 충분한 수의 막대가 항상 사용 가능하다고 가정할 수 있으며, qi가 1부터 시작하는 유효한 사람 번호인 경우 배열 q[]에 제공된 M 쿼리에 응답하여 qith 사람이 사용할 수 있는 최대 막대 길이를 찾습니다. 예시 Input : a[] = {6, 5, 9, 10, 12}    q[] = {1, 3} Output : 12

    Total 5992 -컴퓨터  FirstPage PreviousPage NextPage LastPage CurrentPage:117/300  20-컴퓨터/Page Goto:1 111 112 113 114 115 116 117 118 119 120 121 122 123