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

    1. 합이 주어진 숫자 n과 같은 최소 제곱 수

      모든 숫자는 완전제곱수의 합으로 나타낼 수 있습니다. 이 문제에서는 주어진 값을 나타내는 데 필요한 완전제곱항의 최소 개수를 찾아야 합니다. 값이 94이므로 95 =92입니다. + 32 + 22 + 12 . 따라서 답은 4가 됩니다. 아이디어는 1에서 시작하는 것입니다. 더 나아가 완전제곱수를 얻습니다. 값이 1~3일 경우 1로만 구성되어야 합니다. 입력 및 출력 Input: An integer number. Say 63. Output: Number of squared terms. Here the answer is 4. 63 =

    2. 모바일 숫자 키패드 문제

      이 문제에서는 숫자 모바일 키패드가 제공됩니다. 현재 버튼의 위, 아래, 오른쪽, 왼쪽 버튼만 누를 수 있으며 대각선 키는 허용되지 않습니다. 또한 키패드의 * 및 # 버튼을 누를 수도 없습니다. 숫자가 주어지면 키패드를 사용하여 주어진 규칙을 유지하면서 형성될 수 있는 주어진 숫자의 가능한 수를 찾아야 합니다. 입력 및 출력 Input: Digit count. Say 3 digit numbers. Output: Number of possible 3 digit numbers, that can be formed with the

    3. 최대 합계를 찾기 위해 숫자를 3 부분으로 나눕니다.

      번호가 제공됩니다. 우리의 임무는 숫자를 n/2, n/3, n/4로 세 번 나누고 숫자를 세 부분으로 나누어 만들 수 있는 최대 합을 찾는 것입니다. 예를 들어, 50은 {25, 16, 12}로 나눌 수 있습니다. 이제 각 집합 {25, 16, 12}를 다시 세 부분으로 나누는 식입니다. 나눗셈을 3회까지 완료한 후 합산하여 최대값을 구합니다. 이 프로그램은 재귀적 방식으로 풀 수 있지만 재귀적 접근 방식에서는 동일한 결과를 여러 번 찾아야 하므로 동적 프로그래밍 방식을 사용하고 이전에 계산된 데이터를 테이블에 저장하면 시간.

    4. 최적의 이진 탐색 트리

      정수 집합이 정렬된 순서로 제공되고 다른 배열 freq가 빈도 수로 지정됩니다. 우리의 임무는 모든 검색에 대한 최소 비용을 찾기 위해 해당 데이터로 이진 검색 트리를 만드는 것입니다. 보조 배열 비용[n, n]은 하위 문제의 솔루션을 해결하고 저장하기 위해 생성됩니다. 비용 매트릭스는 상향식 방식으로 문제를 해결하기 위한 데이터를 보유합니다. 입력 및 출력 Input: The key values as node and the frequency. Keys = {10, 12, 20} Frequency = {34, 8, 50} Outp

    5. 와일드카드 패턴 일치

      이 문제에 대해 하나의 기본 문자열과 다른 와일드카드 패턴이 제공됩니다. 이 알고리즘에서는 와일드카드 패턴이 본문과 일치하는지 여부를 확인합니다. 와일드카드 패턴에는 문자나 * 또는 ? 기호가 포함될 수 있습니다. ?는 단일 문자를 일치시키는 데 사용하고 *는 공백을 포함한 문자의 시퀀스를 일치시키는 데 사용합니다. 캐릭터가 *일 때 :별 캐릭터는 무시하고 패턴에서 다음 캐릭터를 확인하기 위해 이동할 수 있습니다. 다음 문자가 ?인 경우 텍스트에서 현재 문자만 무시하고 패턴과 텍스트에서 다음 문자를 확인할 수 있습니다. 패턴

    6. 친구 페어링 문제

      그룹에는 n명의 친구가 있습니다. 각 사람은 독신으로 남거나 다른 친구와 짝을 이룰 수 있습니다. 친구가 독신으로 남거나 짝을 이룰 수 있는 총 방법의 수를 찾으십시오. 한 쌍에 두 친구의 p와 q가 있으면 (p, q) 또는 (q, p)는 같습니다. n명의 친구 그룹에 대해 f(n)을 그들이 어떻게 짝을 이루거나 독신으로 남을 수 있는 방법의 수라고 하자. 그런 다음 n 번째 사람은 독신으로 남아 있거나 짝을 이룹니다. n 번째 사람이 독신이면 (n - 1) 친구에게 반복됩니다. n 번째 사람이 나머지 (n-1) 사람과 짝을

    7. 회문 분할

      이 알고리즘에서 입력은 문자열이며 파티션의 모든 하위 문자열이 회문일 때 해당 문자열의 분할은 회문 분할입니다. 이 알고리즘에서 우리는 주어진 문자열을 분할하는 회문에 필요한 최소 컷을 찾아야 합니다. 입력 및 출력 Input: A string. Say “ababbbabbababa” Output: Minimum cut to partition as palindrome. Here 3 cuts are needed. The palindromes are: a | babbbab | b | ababa 알고리즘 minPal

    8. 파티션 문제

      이 문제에서 주어진 집합은 각 부분 집합의 합이 같은 방식으로 분할될 수 있습니다. 먼저 주어진 집합의 합을 찾아야 합니다. 짝수이면 두 세트로 나눌 기회가 있습니다. 그렇지 않으면 나눌 수 없습니다. 합계 값이 짝수인 경우 partTable이라는 테이블을 만들고 이제 다음 조건을 사용하여 문제를 해결합니다. partTable[i, j]는 array[0]에서 array[j-1]까지의 부분집합이 i와 같을 때 true이고 그렇지 않으면 false입니다. 입력 및 출력 Input: A set of integers. {3, 1, 1

    9. 가장 긴 회문 부분 수열

      가장 긴 회문 하위 시퀀스는 주어진 시퀀스의 하위 시퀀스이며 하위 시퀀스는 회문입니다. 이 문제에서는 하나의 문자 시퀀스가 ​​주어지며 회문 부분 시퀀스의 가장 긴 길이를 찾아야 합니다. 이 문제를 해결하기 위해 재귀 공식을 사용할 수 있습니다. L(0, n-1)이 가장 긴 회문 부분 수열의 길이를 저장하는 데 사용되는 경우 L (0, n-1) :=L (1, n-2) + 2 (0번째와 (n-1)번째 문자가 같은 경우). 입력 및 출력 입력:문자나 기호가 다른 문자열. 입력이 ABCDEEAB라고 가정합니다. 출력:가장 큰 회문

    10. 행렬 사슬 곱셈

      행렬의 체인이 주어지면 곱할 올바른 행렬 시퀀스의 최소 수를 찾아야 합니다. 우리는 행렬 곱셈이 연관적이라는 것을 알고 있으므로 4개의 행렬 ABCD를 사용하면 이 시퀀스에서 A(BCD), (AB)(CD), (ABC)D, A(BC)D를 곱할 수 있습니다. 이러한 시퀀스와 마찬가지로 우리의 임무는 곱하기에 효율적인 순서를 찾는 것입니다. 주어진 입력에는 arr[] ={1, 2, 3, 4}를 포함하는 arr 배열이 있습니다. 행렬이 (1 x 2), (2 x 3), (3 x 4) 순서라는 것을 의미합니다. 입력 및 출력 Input:

    11. 쌍의 최대 길이 사슬

      쌍의 사슬이 주어집니다. 각 쌍에는 두 개의 정수가 있으며 첫 번째 정수는 항상 작고 두 번째 정수가 크면 체인 구성에도 동일한 규칙을 적용할 수 있습니다. q

    12. 모두 1인 최대 크기의 정사각형 부분행렬

      이진 행렬이 주어졌을 때 우리의 임무는 모든 요소가 1인 정방 행렬을 찾는 것입니다. 이 문제를 위해 우리는 주어진 행렬과 차수가 같은 보조 크기 행렬을 만들 것입니다. 이 크기 행렬은 각 항목에서 Size[i, j]가 모두 1인 정방 행렬의 크기임을 나타내는 데 도움이 됩니다. 그 크기 행렬에서 가장 큰 정사각형 행렬의 크기를 얻기 위한 최대 수를 얻습니다. 입력 및 출력 Input: The binary matrix. 0 1 1 0 1 1 1 0 1 0 0 1 1 1 0 1 1 1 1 1 0 0 0 0 0 Output: The

    13. 최대 2번의 주식을 사고팔 때 최대 이익

      거래에서 한 명의 구매자는 아침과 저녁에 각각 주식을 사고팔 수 있습니다. 하루에 최대 2개의 거래가 허용되는 경우. 두 번째 트랜잭션은 첫 번째 트랜잭션이 완료된 후에만 시작할 수 있습니다. 주가가 주어지면 구매자가 얻을 수 있는 최대 이익을 찾으십시오. 입력 및 출력 Input: A list of stock prices. {2, 30, 15, 10, 8, 25, 80} Output: Here the total profit is 100. As buying at price 2 and selling at price 30. so pro

    14. 최대 합 증가 부분 수열

      최대 합계 증가 하위 시퀀스는 합계가 최대이고 하위 시퀀스에서 모든 요소가 오름차순으로 정렬되는 주어진 정수 목록의 하위 시퀀스입니다. L[i]가 array[i]로 끝나는 최대 합 증가 부분 시퀀스가 ​​되도록 최대 합 증가 부분 시퀀스를 저장할 배열이 있다고 가정합니다. 입력 및 출력 Input: Sequence of integers. {3, 2, 6, 4, 5, 1} Output: Increasing subsequence whose sum is maximum. {3, 4, 5}. 알고리즘 maxSumSubSeq(array, n

    15. 2D 행렬의 최대 합 직사각형

      행렬이 제공됩니다. 합이 최대인 직사각형(때로는 정사각형) 행렬을 찾아야 합니다. 이 알고리즘의 이면에 있는 아이디어는 왼쪽 및 오른쪽 열을 수정하고 각 행에 대해 왼쪽 열에서 오른쪽 열까지 요소의 합을 찾아 임시로 저장하는 것입니다. 우리는 상단 및 하단 행 번호를 찾으려고 노력할 것입니다. 임시 배열을 얻은 후 Kadane의 알고리즘을 적용하여 최대 합 하위 배열을 얻을 수 있습니다. 그것으로 전체 직사각형이 형성됩니다. 입력 및 출력 Input: The matrix of integers.  1  2 -1 -

    16. 최소 비용 경로

      다른 비용의 매트릭스가 제공됩니다. 또한 대상 셀이 제공됩니다. 시작 셀(0, 0)에서 목적지 셀에 도달하기 위한 최소 비용 경로를 찾아야 합니다. 행렬의 각 셀은 해당 셀을 통과하는 비용을 나타냅니다. 셀에서 우리는 아무데도 이동할 수 없으며 목적지에 도달하기 위해 오른쪽이나 아래쪽 또는 오른쪽 아래 대각선 셀로 이동할 수 있습니다. 입력 및 출력 Input: The cost matrix. And the destination point. In this case the destination point is (2, 2). 1 2

    17. 최소 비용 다각형 삼각 측량

      교차하지 않는 대각선이 다각형에서 삼각형을 형성하는 것을 삼각 측량이라고 합니다. 우리의 임무는 삼각 측량의 최소 비용을 찾는 것입니다. 삼각측량 비용은 구성 요소 삼각형의 가중치의 합입니다. 우리는 각 삼각형의 변을 더하여 무게를 찾을 수 있습니다. 즉, 무게는 삼각형의 둘레입니다. 입력 및 출력 Input: The points of a polygon. {(0, 0), (1, 0), (2, 1), (1, 2), (0, 2)} Output: The total cost of the triangulation. Here the cost

    18. 목적지에 도달하기 위한 최소 초기 포인트

      주어진 그리드의 왼쪽 상단 모서리에서 시작하려면 오른쪽 하단 모서리에 도달해야 합니다. 그리드의 각 셀에는 숫자가 포함되며 숫자는 양수 또는 음수일 수 있습니다. 사람이 셀(i, j)에 도달하면 그가 가지고 있는 토큰 수는 해당 셀의 값에 따라 증가하거나 감소할 수 있습니다. 여정을 완료하는 데 필요한 최소 초기 토큰 수를 찾아야 합니다. 몇 가지 규칙이 있습니다 - 오른쪽이나 아래쪽으로 이동할 수 있습니다. 총 토큰이 (i, j) 값보다 작으면 셀 (i, j)로 이동할 수 없습니다. 최소의 긍정적인 점수로 목적지에 도달해야 합

    19. 플로이드 워샬 알고리즘

      Floyd-Warshall 알고리즘은 주어진 가중치 그래프에서 모든 쌍의 최단 경로 문제를 찾는 데 사용됩니다. 이 알고리즘의 결과로 그래프의 모든 노드에서 다른 모든 노드까지의 최소 거리를 나타내는 행렬이 생성됩니다. 처음에 출력 행렬은 그래프의 주어진 비용 행렬과 동일합니다. 그 후 출력 행렬은 모든 정점 k를 중간 정점으로 사용하여 업데이트됩니다. 이 알고리즘의 시간 복잡도는 O(V^3)이며, 여기서 V는 그래프의 정점 수입니다. 입력 및 출력 입력:그래프의 비용 행렬.0 3 6 ∞ ∞ ∞ ∞3 0 2 1 ∞ ∞ ∞6

    20. 피보나치 수열 생성

      피보나치 수열은 다음과 같습니다. 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55,…… 이 수열에서 n번째 항은 (n-1)번째 항과 (n-2)번째 항의 합입니다. 생성하기 위해 재귀 접근 방식을 사용할 수 있지만 동적 프로그래밍에서는 절차가 더 간단합니다. 모든 피보나치 수를 테이블에 저장할 수 있으며 해당 테이블을 사용하여 이 시퀀스에서 다음 항을 쉽게 생성할 수 있습니다. 입력 및 출력 Input: Take the term number as an input. Say it is 10 O

    Total 1466 -컴퓨터  FirstPage PreviousPage NextPage LastPage CurrentPage:66/74  20-컴퓨터/Page Goto:1 60 61 62 63 64 65 66 67 68 69 70 71 72