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

    1. 범위 [L, R] 내에서 가능한 모든 공동 프라임 고유 요소 쌍?

      여기에서 숫자가 단일 쌍 이상으로 나타나지 않는 범위에서 공동 프라임 쌍의 수를 계산하는 방법을 볼 것입니다. 논리를 논의하기 전에 공소수(co-prime number)가 무엇인지 볼까요? 공소수는 양의 정수 제수가 하나뿐인 숫자, 즉 1입니다. 즉, 이 두 숫자의 GCD가 1이라고 말할 수 있습니다. 여기에서 우리는 하한과 상한을 제공합니다. 하한과 상한이 1과 6이면 세 쌍이 있습니다. (1, 2), (3, 4) 및 (5, 6) 이 문제를 해결하기 위한 접근 방식은 다음과 같습니다. 숫자가 연속적이면 항상 공소수입니다. 따

    2. 선행 0이 없는 N 자리 및 밑수 B의 가능한 모든 수?

      여기서 우리는 하나의 문제를 볼 것입니다. 우리는 N과 밑수 B가 있습니다. 우리의 임무는 선행 0 없이 밑수 B의 모든 N 자리 숫자를 계산하는 것입니다. 따라서 N이 2이고 B가 2인 경우 4개의 숫자 00, 01, 10, 11이 있습니다. 따라서 이 섹션에서는 그 중 2개만 유효합니다. 이것은 10, 11이며 선행 0이 없습니다. 밑수가 B이면 0에서 B까지 – 1개의 다른 숫자가 있습니다. 그래서 BN 여러 N 자리 값을 생성할 수 있습니다(선행 0 포함). 무시하면 첫 번째 숫자는 0m입니다. BN-1 숫자. 따라서 선행

    3. 주어진 문자열로 구성할 수 있는 길이에 관계없이 가능한 모든 문자열은 무엇입니까?

      이 섹션에서는 길이에 관계없이 가능한 모든 문자열을 생성하는 방법을 볼 것입니다. 이것은 문자열을 만들기 위해 각 문자 조합을 사용합니다. 예를 들어 문자열이 ABC이면 다음을 생성합니다. - {A, B, C, AB, BA, BC, CB, CA, AC, ABC, ACB, BAC, BCA, CAB, CBA} 아이디어를 얻기 위해 예제를 살펴보겠습니다. 알고리즘 printAllString(str) Begin n :=문자열의 길이는 str count 가 2^n – 1 카운트할 각 숫자 0에 대해, do sub_str :=범위 0에서 n

    4. C/C++에서 system()으로 놀라운 일?

      여기서 우리는 C 또는 C++에서 system() 함수를 사용하여 놀라운 결과를 볼 수 있습니다. 시스템 기능은 Windows, Linux 및 MAC 운영 체제에 있습니다. Command line에 작성할 수 있는 시스템 명령어를 실행하는 기능입니다. 여기에서는 시스템이 C 또는 C++에서 작동하는 경우 두 가지 사용법을 볼 수 있습니다. 첫 번째는 C++ 프로그램을 사용하여 IP 구성 세부 정보를 가져오는 것입니다. 예시 #include <iostream> #include <cstdlib> using nam

    5. n 번째 피보나치 수가 10의 배수인지 확인하는 효율적인 방법은 무엇입니까?

      여기에서 n번째 피보나치 항이 10의 배수인지 여부를 확인하는 한 가지 효율적인 방법을 볼 것입니다. 피보나치 항이 {0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987}이라고 가정합니다. 여기 15입니다. (0부터 계산) 피보나치 항은 10으로 나눌 수 있습니다. 16의 경우 true를 반환합니다. 가장 쉬운 방법 중 하나는 주어진 항까지 피보나치 수를 생성하고 10으로 나눌 수 있는지 여부를 확인하는 것입니다. 그러나 이 솔루션은 더 큰 기간에는 작동하지 않기 때

    6. 1에서 n까지의 이진수를 생성하는 흥미로운 방법?

      여기에서 우리는 1에서 n까지의 이진수를 생성하는 한 가지 흥미로운 방법을 볼 것입니다. 여기서는 큐를 사용하고 있습니다. 처음에 대기열은 첫 번째 이진수 1을 보유합니다. 이제 대기열에서 요소를 반복적으로 삭제하고 인쇄하고 앞 항목의 끝에 0을 추가하고 앞 시간의 끝에 1을 추가하고 대기열에 삽입합니다. 아이디어를 얻을 수 있는 알고리즘을 살펴보겠습니다. 알고리즘 genBinaryNumbers(n) Begin    define empty queue.    insert 1 into the queu

    7. n보다 작은 모든 소수를 얻는 흥미로운 솔루션?

      여기서는 n보다 작은 모든 소수를 효율적인 방법으로 생성하는 방법을 살펴보겠습니다. 이 접근법에서 우리는 윌슨의 정리를 사용할 것입니다. 그의 정리에 따르면 숫자 k가 소수이면 ((k - 1)! + 1) mod k는 0이 됩니다. 이 아이디어를 얻기 위한 알고리즘을 살펴보겠습니다. 이 아이디어는 큰 정수를 지원하지 않기 때문에 언어와 같은 C 또는 C++에서 직접 작동하지 않습니다. 계승은 많은 수를 생성합니다. 알고리즘 genAllPrime(n) Begin    fact := 1    for

    8. 이진 트리의 반시계 방향 나선형 순회?

      여기서 우리는 한 가지 흥미로운 문제를 보게 될 것입니다. 하나의 이진 트리가 있습니다. 우리는 시계 반대 방향으로 나무를 횡단해야 합니다. 순회는 아래와 같을 것입니다 - 순회 순서는 1, 8, 9, 10, 11, 12, 13, 14, 15, 3, 2, 4, 5, 6, 7입니다. 알고리즘 안티클록 트래버스(루트) Begin    i := 1, j := height of the tree    flag := false    while i <= j, do   &n

    9. 주어진 각도에서 호 길이?

      여기서 우리는 주어진 각도에서 호 길이를 구하는 방법을 볼 것입니다. 하나의 원이 주어집니다. 원의 반지름이 주어집니다. 우리의 임무는 반경과 각도를 사용하여 호 길이를 얻는 것입니다. 각도는 도 단위입니다. 여기서 r과 x가 주어진다. L의 값을 찾아야 합니다. 공식은 다음과 같습니다. - 𝐿 = 2𝜋𝑟 ∗ (𝑥/360) 예시 #include <iostream> using namespace std; float getArcLength(float r, float x){    ret

    10. 반원에 내접하는 직사각형에 내접하는 원의 넓이는?

      하나의 반원이 주어진다고 가정합시다. 반지름은 R입니다. 길이가 l이고 너비가 b인 직사각형 하나가 반원에 내접되어 있습니다. 이제 반지름이 r인 원이 직사각형에 내접됩니다. 내부 원의 면적을 찾아야 합니다. 반원 안에 내접할 수 있는 가장 큰 직사각형은 길이가 l이고 너비가 b이므로 l과 b의 방정식은 다음과 같습니다. - 이제 직사각형 안에 내접할 수 있는 가장 큰 원은 반지름이 r인 다음과 같습니다. - 예시 #include <iostream> #include <cmath> using

    11. 정사각형 안의 잎 면적은?

      여기에서 사각형 ABCD 내부에 있는 아래 잎과 같은 영역을 구하는 방법을 살펴보겠습니다. 정사각형의 각 변의 길이는 입니다. 잎에는 두 개의 동일한 부분이 있습니다. 각 부분의 면적은 p, 이제 −라고 합니다. 그리고 풀잎의 넓이는 2p입니다. 예시 #include <iostream> using namespace std; float leafArea(float a){    return (a * a * (3.1415/2 - 1)); } int main() {    float s

    12. 주어진 반지름을 가진 n면 정다각형의 면적은?

      여기서 우리는 반지름이 주어진 n-면 정다각형의 면적을 구하는 방법을 볼 것입니다. 여기서 반지름은 정점의 중심으로부터의 거리입니다. 이 문제를 해결하기 위해 중심에서 한쪽으로 수직인 하나를 그렸습니다. 각 변의 길이를 로 둡니다. 수직은 측면을 두 부분으로 나누는 것입니다. 각 부분의 길이는 a/2입니다. 수직과 하나의 반지름이 각도 x를 만들고 있습니다. 반지름의 길이를 h라고 하자. 여기서 우리는 다각형이 N개의 동일한 삼각형으로 분할된 것을 볼 수 있습니다. 따라서 N면이 있는 다각형의 경우 N개의 삼각형으로 나뉩니다.

    13. 를로 삼각지대?

      여기서는 아래와 같이 로 삼각형의 면적을 계산하는 방법을 살펴보겠습니다. Reuleaux 삼각형은 내부에 하나의 정삼각형이 있습니다. 높이가 h라고 가정하면 이 모양은 세 개의 원의 교차로 만들어집니다. 세 개의 원형 섹터가 있습니다. 각 섹터의 면적은 - 정삼각형의 넓이는 세 번 더하기 때문에 빼야 합니다. 따라서 최종 영역은 - 예시 #include <iostream> #include <cmath> using namespace std; float areaReuleaux(float h) { &n

    14. 모든 인접 요소 간의 절대 차이> 1이 되도록 처음 N개의 자연수를 정렬하십시오.

      1인 경우 하나의 순열을 얻는 것입니다. 이러한 순열이 없으면 -1을 반환합니다. 접근 방식은 간단합니다. 우리는 탐욕스러운 접근 방식을 사용할 것입니다. 모든 홀수를 오름차순 또는 내림차순으로 정렬한 다음 모든 짝수를 내림차순 또는 오름차순으로 정렬합니다. 알고리즘 배열N(n) Begin    if N is 1, then return 1    if N is 2 or 3, then return -1 as no such permutation is not present    eve

    15. 모음과 자음의 상대적인 위치를 바꾸지 않고 단어의 배열은?

      n개의 요소(n <10)를 가진 문자열이 있다고 가정합니다. 모음과 자음의 상대적인 위치를 바꾸지 않고 문자열을 배열할 수 있는 방법의 수를 찾아야 합니다. 접근 방식은 간단합니다. 주어진 문자열에서 모음과 자음의 수를 세고 모음만 배열하는 방법의 수를 찾은 다음 자음만 배열하는 방법의 수를 찾은 다음 이 두 결과를 곱하여 다음을 얻습니다. 전체 방법. 알고리즘 arrangeWayCount(str) Begin    define an array ‘freq’ to store frequency.

    16. 단일 이동을 사용하여 k만큼 이동된 배열 요소?

      1에서 n까지 n개의 요소가 섞인 순서로 배열이 있다고 가정합니다. 또 다른 정수 K가 주어진다. N명의 사람들이 배드민턴을 치려고 줄을 서 있습니다. 처음 두 명의 플레이어는 게임을 하러 가고, 패자는 대기열 끝에 갑니다. 승자는 대기열에서 다음 사람과 게임을 하는 식으로 진행됩니다. 그들은 누군가가 K 번 연속으로 이길 때까지 플레이할 것입니다. 그러면 그 플레이어가 승자가 됩니다. 대기열이 [2, 1, 3, 4, 5]이고 K =2인 경우 출력은 5가 됩니다. 이제 설명을 참조하십시오 - (2, 1) 플레이, 2승, 따라서

    17. 절대 차이의 최소 합계가 있는 배열 요소?

      여기서 우리는 한 가지 흥미로운 문제를 보게 될 것입니다. N개의 요소가 있는 하나의 배열 을 가져옵니다. |a[0] - x|와 같은 요소 x를 찾아야 합니다. + |a[1] - x|+ ... + |a[n-1] - x| 최소화됩니다. 그런 다음 최소화된 합계를 찾아야 합니다. 배열을 {1, 3, 9, 6, 3}이라고 합시다. 이제 x는 3입니다. 따라서 합계는 |1 - 3|입니다. + |3 - 3| + |9 - 3| + |6 - 3| + |3 - 3| =11. 이 문제를 해결하려면 배열의 중앙값을 x로 선택해야 합니다. 배열 크

    18. 두 번 이상 나타나는 배열 요소?

      여기서 우리는 한 가지 문제를 보게 될 것입니다. 하나의 배열이 있습니다. 우리의 임무는 빈도가 1보다 큰 요소를 찾는 것입니다. 요소가 {1, 5, 2, 5, 3, 1, 5, 2, 7}이라고 가정합니다. 1번은 2번, 5번은 3번, 2번은 3번, 나머지는 1번만 발생했습니다. 따라서 출력은 {1, 5, 2}가 됩니다. 알고리즘 moreFreq(arr, n) arr의 각 요소 e에 대해 int 유형 키와 int 유형 값으로 맵 정의를 시작하고 각 키에 대해 map.key(arr).value를 증가시킵니다. 값이 1보다 큰지 확인한

    19. 프라임 주파수가 있는 배열 요소?

      하나의 배열이 있다고 가정합니다. 배열에 존재하는 요소의 수를 소수로 계산해야 합니다. 따라서 배열이 {1, 2, 2, 0, 1, 5, 2, 5, 0, 0, 1, 1}이면 1은 4번, 2는 3번, 0은 3번, 5는 2번 나타납니다. 따라서 소수가 발생한 세 개의 요소 {2, 0, 5}가 있습니다. 따라서 개수는 3이 됩니다. 알고리즘 countPrimeOccurrence(arr, n) Begin    count := 0    define map with int type key and int typ

    20. 이전에서 숫자를 나눈 후 배열 합계?

      여기서 우리는 한 가지 흥미로운 문제를 보게 될 것입니다. 우리는 하나의 배열을 취하고 각 요소를 이전 요소로 나눈 후 각 요소를 취하여 합을 찾습니다. 배열이 {5, 6, 7, 2, 1, 4}라고 가정해 보겠습니다. 그러면 결과는 5 + (6 / 5) + (7 / 6) + (2 / 7) + (1 / 2) + (4 / 1) =12.15238이 됩니다. 개념을 얻기 위한 알고리즘을 살펴보겠습니다. 알고리즘 divSum(arr, n) begin    sum := arr[0]    for i := 1

    Total 1436 -컴퓨터  FirstPage PreviousPage NextPage LastPage CurrentPage:24/72  20-컴퓨터/Page Goto:1 18 19 20 21 22 23 24 25 26 27 28 29 30