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

    1. C++에서 트리의 거리 합계

      N개의 노드가 있는 하나의 무방향, 연결된 트리가 있다고 가정합니다. 이들은 0...N-1으로 레이블이 지정되고 N-1 모서리가 제공됩니다. i번째 에지는 노드 edge[i][0]와 edge[i][1]를 함께 연결합니다. ans[i]가 노드 i와 다른 모든 노드 사이의 거리의 합인 목록을 찾아야 합니다. 따라서 입력이 N =6이고 edge =[(0,1),(0,2),(2,3),(2,4),(2,5)]인 경우 출력은 다음과 같습니다. [8,12,6,10,10,10] 이 문제를 해결하기 위해 다음 단계를 따릅니다. − dfs1()

    2. C++의 유사한 문자열 그룹

      두 개의 문자열 X와 Y가 있다고 가정하고 X의 두 글자를 바꿔서 Y와 같게 할 수 있다면 이들은 비슷합니다. 또한 두 문자열 X와 Y는 같으면 비슷합니다. 예를 들어, 두 개의 문자열이 tars와 같고 rats가 비슷하다고 생각하면 t와 r을 바꾸면 다른 문자열을 찾을 수 있습니다. 이제 rats와 arts는 비슷하지만 star는 그렇지 않습니다. tars, rats 또는 arts와 유사합니다. 이제 우리는 이들이 {tar, rats, arts} 및 {star}라는 유사성으로 연결된 두 그룹을 형성한다는 것을 알 수 있습니다. 여

    3. C++의 모든 노드를 방문하는 최단 경로

      N개의 노드가 있는 하나의 무방향 연결 그래프가 있다고 가정합니다. 이 노드는 0, 1, 2, ..., N-1로 레이블이 지정됩니다. 그래프 길이는 N이고 j는 노드 i와 j가 연결된 경우에만 목록 그래프[i]에 있는 i와 정확히 한 번 같지 않습니다. 모든 노드를 방문하는 최단 경로의 길이를 찾아야 합니다. 모든 노드에서 시작 및 중지할 수 있으며 노드를 여러 번 다시 방문할 수 있으며 가장자리를 재사용할 수 있습니다. 따라서 입력이 [[1],[0,2,4],[1,3,4],[2],[1,2]]와 같으면 출력은 4가 됩니다. 이제 여

    4. C++의 K-유사 문자열

      두 개의 문자열 A와 B가 있다고 가정합니다. 결과 문자열이 B가 되도록 A에서 두 문자의 위치를 ​​정확히 K번 교환할 수 있다면 이 두 문자열은 K 유사합니다(여기서 K는 음이 아닌 정수 하나). 두 개의 아나그램 A와 B, 우리는 A와 B가 K-유사한 가장 작은 K를 찾아야 합니다. 따라서 입력이 A =abc, B =bac와 같으면 출력은 2가 됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − 함수 swapp()를 정의하면 문자열 s, i, j,가 사용됩니다. x :=s[i], y :=s[j] s

    5. C++에서 K 작업자를 고용하기 위한 최소 비용

      N명의 작업자가 있다고 가정합니다. 각 작업자에는 품질 매개변수가 있습니다. i번째 근로자는 자질[i]과 최저임금 기대임금[i]을 갖는다. 이제 K 직원을 고용하여 유료 그룹을 구성하려고 합니다. K 직원 그룹을 고용할 때 다음 규칙에 따라 급여를 지급해야 합니다. - 유급 그룹의 각 근로자는 유급 그룹의 다른 직원과 비교하여 품질의 비율로 급여를 받아야 합니다. 유급 그룹의 모든 근로자는 최소 기대 임금 이상을 받아야 합니다. 위의 조건을 만족하는 유료 그룹을 구성하는 데 필요한 최소 금액을 찾아야 합니다. 따라

    6. C++에서 합이 최소 K인 최단 하위 배열

      배열 A가 있다고 가정합니다. 합이 K 이상인 A의 가장 짧고 비어 있지 않은 연속 하위 배열의 길이를 찾아야 합니다. 그러한 하위 배열이 없으면 -1을 반환합니다. =6에서 볼 수 있듯이 2가 됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − n :=A의 크기 ans :=n + 1, j :=0, 합계 :=0 하나의 데크 dq 정의 initialize i :=0의 경우, i

    7. C++에서 최소 급유 중지 수

      출발 위치에서 출발 위치에서 동쪽으로 t마일 떨어진 목적지까지 이동하는 자동차가 있다고 가정합니다. 이제 길을 따라 많은 주유소가 있습니다. 따라서 각 스테이션[i]은 시작 위치에서 동쪽으로 스테이션[i][0]마일에 있는 주유소를 나타내며 해당 스테이션에는 주유소[i][1]리터가 있습니다. 자동차가 무한한 크기의 가스 탱크로 시작하는 경우 처음에는 연료 리터의 연료가 들어 있습니다. 주행하는 1마일당 1리터의 가스를 사용합니다. 차가 한 주유소에 도착하면 멈추고 연료를 보급할 수 있으므로 이제 주유소의 모든 주유소를 자동차로

    8. C++의 수익성 있는 계획

      G 사람들과 그들이 저지를 수 있는 다양한 범죄 목록이 있는 갱단이 있다고 가정합니다. i 번째 범죄는 이익 가치 이익[i]을 생성하고 그룹[i] 갱단 구성원이 참여해야 합니다. 갱단원이 한 범죄에 가담하면 다른 범죄에 가담할 수 없습니다. 이제 P 이상의 수익을 창출하는 이러한 범죄의 하위 집합을 정의하고 해당 범죄 하위 집합에 참여하는 구성원의 총 수는 G 이하인 수익성 있는 계획을 정의합니다. 얼마나 많은 계획을 선택할 수 있는지 찾아야 합니까? 대답은 매우 클 수 있으므로 모듈로 10^9 + 7을 반환합니다. 따라서 입

    9. C++의 슈퍼 에그 드롭

      K 개의 알을 줬고 1에서 N까지의 N 층을 가진 건물이 있다고 가정합니다. 이제 각 달걀은 기능이 동일하며 달걀이 깨지면 다시 떨어뜨릴 수 없습니다. 0과 N 사이에 F층이 존재하여 F보다 높은 층에 떨어진 계란은 깨지고 F층 이하에 떨어진 계란은 깨지지 않습니다. 각 이동에서 우리는 X 층에서 계란 하나를 가져와서 떨어뜨릴 수 있습니다. X는 1에서 N까지의 범위에 있습니다. 우리의 목표는 F의 값이 무엇인지 확실히 아는 것입니다. 그렇다면 F의 초기 값에 관계없이 F가 무엇인지 확실히 알아야 하는 최소 이동 횟수는 얼마입니

    10. C++에서 하위 시퀀스 너비의 합

      정수 배열 A가 있다고 가정하고 A의 비어 있지 않은 모든 하위 시퀀스를 고려합니다. 시퀀스 S에 대해 S의 너비를 S의 최대 요소와 최소 요소 간의 차이로 간주합니다. 너비의 합을 찾아야 합니다. A의 모든 하위 시퀀스. 답은 매우 클 수 있으므로 모듈로 10^9 + 7을 반환합니다. 따라서 입력이 [3,1,2]와 같으면 출력이 6이 됩니다. 이는 하위 시퀀스가 ​​[1], [2], [3], [2,1], [2, 3], [1,3], [2,1,3]이고 너비는 0, 0, 0, 1, 1, 2, 2이므로 너비 값의 합은 6입니다. 이

    11. C++의 최대 주파수 스택

      FreqStack이라고 하는 하나의 스택을 구현하려고 한다고 가정하고 FreqStack에는 두 가지 기능이 있습니다. push(x), 이것은 정수 x를 스택에 푸시합니다. pop(), 이것은 스택에서 가장 빈번한 요소를 제거하고 반환합니다. 빈도가 동일한 요소가 두 개 이상 있는 경우 스택의 맨 위에 가장 가까운 요소가 제거되고 반환됩니다. 따라서 입력이 7, 9, 7, 9, 6, 7과 같은 일부 요소를 푸시한 다음 팝 작업을 네 번 수행하면 출력은 각각 7,9,7,6이 됩니다. 이 문제를 해결하기 위해 다음 단

    12. C++의 순서 대기열

      문자열 S가 있다고 가정합니다. S의 모든 문자는 소문자입니다. 그러면 우리는 얼마든지 움직일 수 있습니다. 여기에서 각 이동에서 첫 번째 K 문자 중 하나를 선택하여 제거하고 문자열 끝에 배치합니다. 우리는 여러 이동 후에 가질 수 있는 사전순으로 가장 작은 문자열을 찾아야 합니다. 따라서 입력이 cabaa이고 K =3이면 출력은 aaabc가 됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − 1이면 - 배열 S 정렬 반환 S ret :=S n :=S의 크기 initialize i

    13. C++로 설정된 최대 N개의 주어진 자릿수

      {1, 2, 3, 4, 5, 6, 7, 8, 9} 제외 0. 이제 이 숫자를 사용하여 원하는 만큼 각 숫자를 사용하여 일부 숫자를 씁니다. 따라서 D ={2,3,7}이면 23, 771, 2372327과 같은 숫자를 쓸 수 있습니다. 이제 N보다 작거나 같은 쓸 수 있는 양의 정수의 수를 찾아야 합니다. 따라서 입력이 D =[2,3,4,7], N =100과 같으면 숫자가 2, 3, 4, 7, 22, 23, 24, 27일 수 있으므로 출력은 20이 됩니다. , 32, 33, 34, 37, 42, 43, 44, 47, 72, 73,

    14. C++의 DI 시퀀스에 대한 유효한 순열

      문자열 S가 있다고 가정합니다. 이것은 {D, I} 집합의 문자 문자열입니다. (D는 감소를 의미하고 I는 증가를 의미) 이제 유효한 순열이 모든 i에 대해 다음 규칙을 충족하도록 정수 {0 ~ n}의 순열 P[0], P[1], ..., P[n]이라고 가정합니다. P[i+1]; 그렇지 않으면 S[i] ==I일 때 P[i]

    15. C++의 슈퍼 회문

      양의 정수 N이 있다고 가정합니다. 회문은 초회문이라고 하며 회문의 제곱이기도 합니다. 이제 두 개의 양의 정수 L과 R이 있다고 생각하면 [L, R]의 포함 범위에서 초회문(superpalindrome)의 수를 찾아야 합니다. 따라서 입력이 L =5 및 R =500과 같으면 출력은 3이 되고 초회문은 9, 121, 484가 됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − helper() 함수를 정의합니다. x, m, M, lb, ub, ub이면 - 반환 =lb이고 (x * x)가 회문이면 -

    16. C++의 음악 재생 목록 수

      N개의 다른 노래가 포함된 음악 플레이어가 있고 여행 중에 L개의 노래를 듣고 싶다고 가정합니다. 따라서 이러한 조건을 충족하도록 재생 목록을 만들어야 합니다. - 모든 노래는 한 번 이상 재생됩니다. K개의 다른 노래가 재생된 경우에만 노래를 다시 재생할 수 있습니다. 가능한 재생 목록의 수를 찾아야 합니다. 답은 매우 클 수 있으므로 모듈로 10^9 + 7을 반환합니다. 따라서 입력이 N =2, L =3, K =0인 경우 가능한 재생 목록 [1,1,2], [1,2,1], [2]가 6개 있으므로 출력은 6이 됩니

    17. C++의 3등분

      0과 1로 구성된 하나의 배열 A가 있다고 가정하고 배열을 비어 있지 않은 세 부분으로 나누어 이 모든 부분이 동일한 이진 값을 나타내도록 해야 합니다. 가능한 경우 i+1

    18. C++의 고유한 하위 시퀀스 II

      문자열 S가 있다고 가정하고 S의 고유한 하위 시퀀스 수를 계산해야 합니다. 결과가 클 수 있으므로 모듈로 10^9 + 7을 반환합니다. 따라서 입력이 bab과 같으면 출력은 a, b, ba, ab, bb, abb의 6가지 다른 시퀀스가 ​​있으므로 6이 됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − add() 함수를 정의하면, b, return ((a mod MOD) + (b mod MOD)) mod MOD 함수 sub()를 정의하면, b, return (((a mod MOD) - (b m

    19. C++에서 가장 짧은 슈퍼스트링 찾기

      문자열 배열 A가 있다고 가정하고 A의 각 문자열을 부분 문자열로 포함하는 가장 작은 문자열을 찾아야 합니다. 또한 A에 있는 어떤 문자열도 A에 있는 다른 문자열의 부분 문자열이 아니라고 가정할 수 있습니다. 따라서 입력이 [dbsh,dsbbhs,hdsb,ssdb,bshdbsd]와 같으면 출력은 hdsbbhssdbshdbsd가 됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − calc() 함수를 정의하면, b, initialize i :=0의 경우, i

    20. C++의 공통 요소별 최대 구성 요소 크기

      고유한 양의 정수로 구성된 배열 A가 있다고 가정하고 이제 다음 그래프를 고려하십시오. - A 길이의 노드가 여러 개 있으며 A[0]에서 A[A - 1의 크기]까지 레이블이 지정됩니다. A[i]와 A[j]가 1보다 큰 공약수를 공유할 때 A[i]와 A[j] 사이에 간선이 있습니다. 그래프에서 가장 큰 연결 성분의 크기를 찾아야 합니다. 따라서 입력이 [4,6,15,35]와 같으면 출력은 4가 됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − 배열 부모 정의 배열 순위 정의 배열 순위 정의 부모[

    Total 5992 -컴퓨터  FirstPage PreviousPage NextPage LastPage CurrentPage:180/300  20-컴퓨터/Page Goto:1 174 175 176 177 178 179 180 181 182 183 184 185 186