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

    1. Python에서 제한보다 작고 XOR이 최대인 요소 목록을 찾는 프로그램

      숫자 nums 목록과 각 쿼리에 [x, limit]가 포함된 쿼리 목록이 있다고 가정합니다. 각 쿼리 [x, limit]에 대해 e ≤ limit 및 e XOR x가 최대화되는 요소 e를 nums에서 찾는 목록을 찾아야 합니다. 해당 요소가 없으면 -1을 반환합니다. 따라서 입력이 nums =[3, 5, 9] 쿼리 =[[4, 6],[2, 0]]과 같으면 첫 번째 쿼리와 마찬가지로 출력은 [3, -1]이 됩니다. 숫자로 2 또는 4를 사용할 수 있습니다. 3 ^ 4 =7 동안 5 ^ 4 =3이므로 더 큰 XOR을 생성하는 3을 선택

    2. Python에서 대상 간격을 병합하여 간격을 찾는 프로그램

      겹치지 않는 간격 목록이 있다고 가정합니다. 종료 시간을 기준으로 정렬됩니다. 다른 간격 대상이 있습니다. 간격이 여전히 겹치지 않고 정렬되도록 대상을 병합한 후 최종 간격을 찾습니다. 따라서 입력이 간격 =[[1, 15],[25, 35],[75, 90]], 대상 =[10, 30]인 경우 출력은 [[1, 35], [ 75, 90]] 처음 두 간격 [1, 15] 및 [25, 35]가 병합됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − iv의 끝에 대상 삽입 시작 시간을 기준으로 iv 정렬 res :=첫

    3. Python의 문자 행렬에서 생성할 수 있는 단어 수를 계산하는 프로그램

      4 x 4 글자 보드와 단어 목록이 있다고 가정하고 단어당 최대 한 번 셀을 사용하여 인접한 문자 시퀀스에 의해 보드에서 생성될 수 있는 최대 단어 수를 찾아야 합니다(그러나 우리는 다른 말로 셀을 재사용할 수 있음). 위, 아래, 왼쪽, 오른쪽 또는 대각선 방향으로 이동할 수 있습니다. 따라서 입력이 다음과 같으면 m b f d x a y a t z t r q q q 단어 =[bat, far, mat]이면 출력은 3이 됩니다. mat [0,1] → [1,1] → [2,0], bat [0, 2] → [1,1] → [

    4. Python에서 인접한 요소의 인덱스 차이를 최소화하는 프로그램

      숫자 nums의 목록이 있다고 가정하고 nums의 (nums[i], nums[j]) 사이에 숫자가 없을 때 두 개의 숫자 nums[i] ≤ nums[j]가 인접한다고 말할 수 있습니다. 우리는 가능한 최소값을 찾아야 합니다 |j - i| nums[j]와 nums[i]가 인접하도록 합니다. 따라서 입력이 nums =[1, -9, 6, -6, 2]와 같으면 출력은 2가 됩니다. 2와 6은 인접하고 서로 2개의 인덱스 떨어져 있다는 것을 알 수 있습니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − 색인 :=새 지도

    5. Python에서 회문을 만드는 데 필요한 최소 스왑 수를 계산하는 프로그램

      문자열 s가 있다고 가정하고 회문으로 만드는 데 필요한 최소 인접 스왑 수를 찾아야 합니다. 해결 방법이 없으면 -1을 반환합니다. 따라서 입력이 s =xxyy와 같으면 출력은 2가 됩니다. 가운데 x와 y를 교환하여 문자열이 xyxy가 되도록 한 다음 처음 두 x와 y는 yxxy를 가져오고 이것은 회문입니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − util() 함수를 정의합니다. 시간이 걸립니다 본 :=새 지도 s의 각 i에 대해 수행 본[i] :=1 + (존재하는 경우 본[i] 그렇지 않으

    6. 파이썬에서 주어진 부분 문자열을 포함하는 최소 문자열 크기를 찾는 프로그램

      두 개의 문자열 s와 t가 있다고 가정하고 t의 모든 문자를 포함하는 s에서 최소 부분 문자열의 크기를 찾아야 합니다. 그러한 하위 문자열이 존재하지 않으면 -1을 반환합니다. 따라서 입력이 s =thegrumpywizardmakes t =wake와 같으면 wake를 포함하는 가장 짧은 부분 문자열이 wizardmake(길이 10)이므로 출력은 10이 됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − counter :=b의 각 문자의 빈도 시작 :=0 min_subs :=정보 rem :=b의 고유

    7. Python에서 삭제 된 숫자의 최소 자릿수 합계를 찾는 프로그램

      두 개의 문자열 s와 숫자 t가 있다고 가정하고 문자열에서 숫자를 제거하는 방법을 찾아야 다음과 같이 됩니다. 1. 두 문자열이 동일합니다. 2. 삭제된 숫자의 합이 최소화됩니다. 마지막으로 최소화된 합을 반환합니다. 따라서 입력이 s =41272 t =172와 같으면 첫 번째 문자열에서 4와 2를 제거하여 172를 얻을 수 있으므로 출력은 6이 됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − lcs() 함수를 정의합니다. 이것은, b, m, n이 걸립니다. table :=크기가 (n + 1) x (m

    8. Python에서 거리의 모든 집을 밝히기 위한 최소 반경을 찾는 프로그램

      1차원 선에서 주택의 위치를 ​​나타내는 nums라는 숫자 목록이 있다고 가정합니다. 이제 라인의 아무 곳에나 설치할 수 있는 가로등이 3개 있고 x 위치의 조명이 [x - r, x + r] 범위(포함)의 모든 집에 불을 밝힙니다. 모든 집을 밝히는 데 필요한 가장 작은 r을 찾아야 합니다. 따라서 입력이 nums =[4,5,6,7]과 같으면 출력은 0.5가 됩니다. 램프를 4.5, 5.5 및 6.5에 배치하여 r =0.5가 되도록 할 수 있기 때문입니다. 따라서 이 3개의 조명으로 4개의 집을 모두 밝힐 수 있습니다. 이 문제

    9. Python에서 목록의 모든 항목을 0으로 만들기 위해 뒤집을 수 있는 최소 k 길이 하위 목록을 계산하는 프로그램

      0과 1을 저장하는 nums라는 숫자 목록이 있다고 가정합니다. 또 다른 값 k가 있습니다. 이제 모든 1이 0이 되고 모든 0이 1이 되도록 길이가 k인 하위 목록을 뒤집는 작업이 있다고 가정합니다. 숫자를 모두 1에서 0으로 변경하는 데 필요한 최소 연산 수를 찾아야 합니다. 변경할 수 없으면 -1을 반환합니다. 따라서 입력이 nums =[1,1,1,0,0,1,1,1], k =3과 같으면 출력은 2가 됩니다. 처음 세 숫자를 0으로 뒤집은 다음 마지막 세 숫자를 0으로 뒤집습니다. 이 문제를 해결하기 위해 다음 단계를 따릅

    10. Python에서 교대 값을 갖는 데 필요한 최소 뒤집기 횟수를 찾는 프로그램

      이진 문자열 s가 있다고 가정합니다. 이제 접두사를 가져와서 뒤로 이동할 수 있다고 가정합니다. 그런 다음, 동일한 값의 연속 문자가 없도록 뒤집어야 하는 최소 문자 수를 찾으십시오. 따라서 입력이 s =10010101111과 같으면 출력은 2가 됩니다. 접두사 10을 사용할 수 있으므로 뒤로 이동하여 문자열이 01010111110이 되도록 한 다음 세 번째 및 다섯 번째 비트를 오른쪽에서 0으로 뒤집습니다. (01010101010). 이 문제를 해결하기 위해 다음 단계를 따릅니다. − as :=S의 크기 N :=S의

    11. 파이썬에서 동물이 멈출 때 움직이는 동물의 최종 위치를 얻는 프로그램

      일부 동물의 초기 조건을 나타내는 문자열 s가 있다고 가정합니다. 각 동물은 세 가지 값 중 하나를 취할 수 있습니다. L은 동물이 왼쪽으로 이동했음을 나타냅니다. R은 동물이 오른쪽으로 이동했음을 나타냅니다. @는 동물이 가만히 서 있음을 나타냅니다. 동물이 반대 방향에서 힘을 받지 않는 한 한 방향으로 움직이는 동물은 다른 동물을 픽업합니다. 그러면 가만히 있을 것입니다. 동물이 움직임을 멈출 때 각 동물의 방향을 찾아야 합니다. 따라서 입력이 s =@@L@R@@@@L과 같으면 출력은 LLL@RRRLLL이 됩니다. 이 문제를

    12. 파이썬에서 가방에 물건을 담을 때 얻을 수 있는 최고가를 찾는 프로그램

      두 개의 숫자 목록이 있다고 가정합니다. 하나는 가중치라고 하고 다른 하나는 값이라고 합니다. 이것들은 같은 길이이며, 우리는 또한 capacity와 count라는 두 개의 값을 가지고 있습니다. 여기서 weights[i]와 values[i]는 i번째 항목의 가중치와 값을 나타냅니다. 우리는 최대 용량 무게와 최대 합계 항목 수를 보유할 수 있으며 각 항목의 복사본을 하나만 가져갈 수 있으므로 얻을 수 있는 최대 가치를 찾아야 합니다. 따라서 입력이 weight =[2, 2, 4, 6] values ​​=[15, 15, 20, 3

    13. 파이썬에서 주어진 문자열에서 가장 긴 유효한 괄호의 길이를 찾는 프로그램

      문자열 s가 있다고 가정합니다. 여는 괄호와 닫는 괄호로만 구성됩니다. 가장 긴 유효(잘 구성된) 괄호 부분 문자열의 길이를 찾아야 합니다. 따라서 입력이 ))(())())와 같으면 유효한 문자열이 (())()이므로 결과는 6이 됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − 스택을 만들고 -1을 삽입하고 다음을 설정합니다. :=0 범위 0에서 스택 길이 – 1에 있는 i의 경우 s[i]가 괄호를 여는 경우 i를 스택에 삽입합니다. 그렇지 않으면 스택이 비어 있지 않고 스택의 맨 위가 -1이

    14. Python에서 N Queens 솔루션을 얻을 수 있는지 여부를 확인하는 프로그램

      0이 빈 셀을 나타내고 1이 해당 셀의 체스 여왕을 나타내는 이진 행렬이 있다고 가정합니다. 이 보드를 채우고 유효한 nqueen 솔루션을 얻을 수 있는지 여부를 확인해야 합니다. 우리가 알고 있는 바와 같이 n개의 퀸즈 퍼즐은 두 개의 체스 퀸이 서로를 공격할 수 없도록 n × n개의 체스판에 n개의 퀸을 놓아야 합니다. 따라서 입력이 다음과 같으면 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 하나의 솔루션이 −와 같으므로 출력은 True가 됩니다. 1 0 0 0 0

    15. Python에서 최소 k 개의 홀수 값으로 가장 길게 증가하는 부분 시퀀스의 길이를 찾는 프로그램

      nums라고 하는 숫자 목록과 또 다른 값 k가 있다고 가정하면 최소 k개의 홀수 요소가 있는 가장 긴 증가 부분 수열의 크기를 찾아야 합니다. 따라서 입력이 nums =[12, 14, 16, 5, 7, 8] k =2와 같으면 출력은 3이 됩니다. 최소 2개의 홀수 값이 있는 가장 긴 증가 부분 시퀀스는 [5, 7, 8]. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − 최고 :=0 dp() 함수를 정의합니다. 이것은 i, j, 홀수, 취해질 것입니다 =k이면 최고 :=최고 및 채택의 최대값 j가

    16. 파이썬에서 요소를 재배열하여 목록의 거듭제곱의 최대값을 얻는 프로그램

      N개의 양수의 목록 번호가 있다고 가정합니다. 이제 목록에서 단일 값을 선택하고 임의의 위치로 이동(교환 아님)할 수 있습니다. 우리는 또한 위치로 전혀 이동할 수 없습니다. 그래서 우리는 목록의 가능한 최대 최종 거듭제곱이 얼마인지 찾아야만 합니까? 우리가 알고 있듯이 목록의 힘은 모든 인덱스 i에 대한 (index + 1) * value_at_index의 합입니다. $$\displaystyle\sum\limits_{i=0}^{n-1} (i+1)\times 목록[i]$$ 따라서 입력이 nums =[6, 2, 3]과 같으면 출력

    17. Python에서 k개의 다른 색상으로 울타리를 페인트하는 최소 비용을 찾는 프로그램

      N개의 울타리를 K개의 다른 색상으로 칠하고 싶다고 가정해 봅시다. 우리는 두 개의 인접한 울타리가 같은 색상을 가지지 않도록 하면서 비용을 최소화하고자 합니다. 따라서 n번째 행과 k번째 열이 n번째 울타리를 k번째 색상으로 칠하는 비용을 나타내는 N x K 행렬이 있는 경우 이 목표를 달성하는 최소 비용을 찾아야 합니다. 따라서 입력이 다음과 같으면 6 4 5 3 2 7 3 4 5 5 4 4 다음 색상 인덱스(첫 번째 울타리부터 시작) - 5 → 2 → 3 → 4를 선택할 수 있으므로 출력은 14가 됩니다. 이

    18. Python에서 시작점에서 끝점까지 비용이 k인 경로의 수를 계산하는 프로그램

      2차원 이진 행렬과 다른 값 k가 있다고 가정합니다. 이제 왼쪽 상단 셀에서 시작하여 오른쪽 하단 셀로 이동해야 합니다. 한 단계에서 우리는 아래로 또는 오른쪽으로만 갈 수 있습니다. 이제 경로의 점수는 경로의 셀에 있는 값의 합계입니다. 점수가 k인 시작 셀에서 끝 셀까지의 경로 수를 찾아야 합니다. 가능한 방법이 많다면 결과 모드 10^9+7을 반환하십시오. 따라서 입력이 다음과 같으면 0 0 1 1 0 1 0 1 0 K =2이면 점수가 2인 경로가 [R,R,D,D], [D,R,R,D], [D,D,R,R], [D이므

    19. Python에서 각 문자가 최대 한 조각으로 나타나는 목록의 각 파티션 크기를 찾는 프로그램

      소문자 문자열 s가 있다고 가정하면 각 문자가 최대 한 조각으로 나타나도록 s를 가능한 한 많은 조각으로 나누고 파티션의 크기를 목록으로 찾을 수 있습니다. 따라서 입력이 s =momoplaykae와 같으면 문자열이 [momo, p, l, 로 분할되므로 출력은 [4, 1, 1, 4, 1]이 됩니다. ayka, e]. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − count :=s에 있는 문자와 해당 문자를 포함하는 맵 out :=새 목록, stk :=빈 스택 길이 :=0 s의 각 문자에 대해 개수

    20. Python에서 주어진 두 위치에서 금을 픽업하는 최소 비용을 찾는 프로그램

      2차원 행렬과 row, col, erow0, ecol0, erow1 및 ecol1과 같은 다른 값이 있다고 가정합니다. 현재 위치가 행렬 [row, col]이고 행렬 [erow0, ecol0] 및 행렬 [erow1, ecol1]에 있는 금을 픽업하려는 경우. 위, 아래, 왼쪽, 오른쪽으로 이동할 수 있지만 셀(r, c)에 있을 때 비용 매트릭스 [r, c]를 지불해야 합니다. 해당 셀에 대한 비용을 다시 지불해야 합니다. 우리는 두 위치 모두에서 골드를 획득하기 위한 최소 비용을 찾아야 합니다. 따라서 입력이 다음과 같으면 1 1

    Total 8994 -컴퓨터  FirstPage PreviousPage NextPage LastPage CurrentPage:202/450  20-컴퓨터/Page Goto:1 196 197 198 199 200 201 202 203 204 205 206 207 208