숫자 목록이 있다고 가정하고 발생 횟수가 1인 숫자를 반환해야 하며 그러한 요소가 없으면 -1을 반환합니다. 따라서 목록이 [5,2,3,6,5,2,9,6,3]과 같으면 출력은 9가 됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − 우리는 각 요소를 확인하고 맵 내부에 요소를 넣을 것이므로 요소가 맵에 없으면 새 항목을 넣고 그렇지 않으면 값을 늘립니다. 그런 다음 지도를 탐색하고 값이 1일 때 키를 반환합니다. 예제(파이썬) 더 나은 이해를 위해 다음 구현을 살펴보겠습니다. − class Solution(
k자리 숫자 N이 있다고 가정합니다. N은 각 숫자의 k번째 거듭제곱이 N일 때 Armstrong 숫자입니다. 따라서 다음과 같은 경우 true를 반환해야 합니다. 암스트롱 번호, 그렇지 않으면 거짓입니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − power :=자릿수 temp :=n, res =0 온도가 0이 아닌 동안 res :=res + (temp mod 10) ^ power temp :=temp / 10 //정수 나누기 res =n이면 true를 반환하고 그렇지 않으면 false를 반환합니다. 예시 더 나
내림차순으로 정렬되지 않은 nums라는 배열과 숫자 대상이 있다고 가정합니다. 대상이 다수 요소인지 찾아야 합니다. 배열에서 다수 요소는 길이가 N인 배열에서 N/2번 이상 나타나는 요소입니다. 따라서 배열이 다음과 같다면 - [2,4,5,5,5,5,5,6,6] target은 5이고 출력은 true입니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − lower() 및 upper()의 두 가지 지원 모듈이 있습니다. 다음과 같습니다. lower()는 두 개의 인수 배열 arr과 target을 취합니다. 즉 - 낮음 :=0,
모든 키가 단일 행에 있는 특수 키보드가 있다고 가정합니다. 따라서 키보드의 레이아웃을 나타내는 길이 26의 문자열(0에서 25까지의 인덱스)이 있는 경우 처음에 손가락은 인덱스 0에 있습니다. 문자를 입력하려면 손가락을 다음 문자의 인덱스로 이동해야 합니다. 인덱스 i에서 인덱스 j로 손가락을 움직이는 데 걸리는 시간은 |i - j|로 표시됩니다. 따라서 문자열을 입력하려는 경우. 한 손가락으로 입력하는 데 걸리는 시간을 계산하는 함수를 정의해야 합니다. 따라서 입력 시퀀스가 abcdefghijklmnopqrstuvwxyz이고
다이어트가 칼로리[i]를 소비한다고 가정하면 이것은 i번째 날의 칼로리를 나타냅니다. 정수 k가 있는 경우 k일의 모든 연속 시퀀스에 대해 즉 (칼로리[i], 칼로리[i+1], ..., 칼로리[i+k-1] for all 0 <=i <=n-k ), 그들은 T를 찾습니다. T는 k일의 해당 시퀀스 동안 소비된 총 칼로리입니다(칼로리[i] + 칼로리[i+1] + ... + 칼로리[i+k-1]):그러나 몇 가지가 있습니다. 조건; T <하한이면 식이요법을 제대로 수행하지 않았으므로 1점을 잃습니다. 상한이면 식단을 잘 수행하므로 1점을
10진수를 처음에는 대문자 16진수 문자열로 변환하고 그 후에 숫자 0의 모든 항목을 문자 O로 바꾸고 숫자를 Hexspeak 표현으로 변환할 수 있다고 가정합니다. 1과 I. 이러한 종류의 표현은 집합 {A, B, C, D, E, F, I, O의 문자로만 구성된 경우에만 유효합니다. }. 그래서 우리는 10진 정수 N을 나타내는 문자열 num을 가지고 있습니다. 우리는 N의 Hexpeak 표현이 맞으면 찾아야 하고, 그렇지 않으면 ERROR를 반환해야 합니다. 따라서 num =257이면 257은 16진수로 101이므로 출력은
정수 값으로 구성된 4개의 목록 A, B, C, D가 있다고 가정하면 A[i ] + B[j] + C[k] + D[l]은 0입니다. 모든 A, B, C, D가 0 ≤ N ≤ 500인 동일한 길이의 N을 갖는다고 가정합니다. 모든 정수는 -228 ~ 228 - 1 범위에 있으며 결과는 최대 231 - 1이 되도록 보장됩니다. 입력은 A =[1, 2], B =[-2, -1], C =[-1, 2], D =[0, 2]이고 출력은 2가 됩니다. 두 개의 튜플은 (0, 0, 0, 1)이므로 A[0] + B[0] + C[0] + D[1] =1 +
비어 있지 않은 정수 배열이 있다고 가정하고 모든 배열 요소를 동일하게 만드는 데 필요한 최소 이동 수를 찾아야 합니다. 여기서 이동은 선택한 요소를 증가 또는 감소시키는 것입니다. 따라서 배열이 [1, 2, 3]과 같을 때 1이 2로 증가하고 3이 2로 감소하므로 출력은 2가 됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − 배열 번호 정렬 카운터를 0으로 설정 숫자 단위로 i에 대해 다음을 수행합니다. 카운터 :=카운터 + 절대값 (i – nums[숫자의 길이 / 2]) 반품 카운터 예제(파이썬) 더 나은 이
문자열이 있다고 가정합니다. 이 문자열에 얼마나 많은 회문 부분 문자열이 있는지 계산해야 합니다. 시작 인덱스 또는 끝 인덱스가 다른 하위 문자열은 동일한 문자로 구성되어 있어도 다른 하위 문자열로 계산됩니다. 따라서 입력이 aaa와 같으면 a, a, a, aa, aa, aaa와 같은 6개의 회문 부분 문자열이 있으므로 출력은 6이 됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − 카운트:=0 문자열인 경우 길이 0 범위의 i에 대해 범위 i + 1에서 문자열 길이 + 1까지의 j에 대해 temp :=인덱스 i에서 j
음수가 아닌 정수가 있다고 가정합니다. 최대 값을 얻기 위해 최대 한 번 두 자리 숫자를 바꿀 수 있습니다. 얻을 수 있는 최대 값을 반환해야 합니다. 따라서 입력이 2736과 같으면 출력은 7236이 됩니다. 그래서 여기에서 2와 7을 교환합니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − num :=숫자에서 각 숫자를 잘라내어 목록을 만듭니다. num1 :=역순으로 숫자 정렬 색인:=0 while 인덱스
N개의 방이 있고 방 0에서 시작한다고 가정합니다. 각 방에는 0, 1, 2, ..., N-1에 고유한 숫자가 있으며 각 방은 다음 방에 액세스할 수 있는 몇 가지 키가 있습니다. 즉, 각 방 i에는 키 방[i]의 목록이 있고 각 키 방[i][j]은 [0, 1, ..., N-1]의 정수입니다. 여기서 N =수 방. A key room[i][j] =v, 입력이 [[1], [2], [3], []]이면 숫자 v로 방을 엽니다. 그러면 출력이 true가 됩니다. 기억해야 할 몇 가지 사항이 더 있습니다. − 처음에는 모든 방이 잠기 시작
문자열 S가 있다고 가정하고 문자가 반복되지 않는 길이가 K인 부분 문자열의 수를 찾아야 합니다. 따라서 S =heyfriendshowareyou이고 K가 5이면 문자열이 [heyfr, eyfri, yfrie, frien, riend, iends, endsh, ndsho, dshow, showa, howar, oware, warey, areyo이므로 출력은 15가 됩니다. , 레유] 이 문제를 해결하기 위해 다음 단계를 따릅니다. − 하나의 빈 맵 생성 m, 왼쪽 :=0 및 오른쪽 :=-1 및 ans :=0 오른쪽 <문자열의 길
[] 대괄호와 색인 번호를 사용하여 목록의 개별 요소에 액세스할 수 있습니다. 그러나 일부 인덱스에 액세스해야 하는 경우 이 방법을 적용할 수 없습니다. 이를 해결하려면 다음과 같은 접근 방식이 필요합니다. 2개의 목록 사용 이 방법에서는 원래 목록과 함께 인덱스를 다른 목록으로 사용합니다. 그런 다음 for 루프를 사용하여 인덱스를 반복하고 해당 값을 값 검색을 위한 기본 목록에 제공합니다. 예시 given_list = ["Mon","Tue","Wed","Thu&qu
이 기사에서는 주어진 문자 집합에서 가능한 단어를 출력하는 파이썬 프로그램을 볼 것입니다. 여기서 우리는 참조 단어 세트를 포함할 입력으로 목록과 단어를 구성하는 문자를 포함하는 또 다른 목록을 사용합니다. 아래 프로그램에서는 두 가지 기능을 정의합니다. 하나는 두 번째 목록에서 문자를 가져와 단어를 구성합니다. 주어진 단어 목록에 있는 단어로 구성된 단어를 일치시키는 또 다른 기능입니다. 예시 def Possible_Words(character): x = {} for n in cha
파이썬 데이터 분석에서 우리는 때때로 주어진 숫자를 많은 값을 포함하는 목록과 비교해야 하는 상황에 직면합니다. 이 기사에서는 주어진 숫자가 주어진 목록에 있는 각 값보다 작은 경우 지느러미를 찾아야 합니다. 우리는 다음 두 가지 방법을 사용하여 그것을 달성할 것입니다. for 루프 사용 주어진 목록을 반복하고 주어진 값을 목록의 각 값과 비교합니다. 목록의 모든 값이 비교되고 각 단계에서 비교 조건이 양호하면 결과를 Yes로 인쇄합니다. 그렇지 않으면 결과가 아니오입니다. 예시 List =[10, 30, 50, 70, 90]va
데이터 세트를 분석하는 동안 빈 사전을 처리해야 하는 상황을 만날 수 있습니다. 이 기사에서는 사전이 비어 있는지 여부를 확인하는 방법을 볼 것입니다. if 사용 사전에 요소가 있으면 if 조건이 true로 평가됩니다. 그렇지 않으면 false로 평가됩니다. 따라서 아래 프로그램에서는 if 조건만 사용하여 사전의 빈 공간을 확인합니다. 예시 dict1 = {1:"Mon",2:"Tue",3:"Wed"} dict2 = {} # Given dictionaries print("
이 기사에서 우리는 주어진 문자열에서 각 문자의 빈도를 찾는 방법을 볼 것입니다. 그런 다음 두 개 이상의 문자가 주어진 문자열에서 동일한 빈도를 갖는지 확인하십시오. 우리는 이것을 두 단계로 수행할 것입니다. 첫 번째 프로그램에서는 각 문자의 빈도를 알아낼 것입니다. 각 문자의 빈도 여기에서 주어진 입력 화면에서 각 문자의 빈도를 찾습니다. 빈 사전을 선언한 다음 각 문자를 문자열로 추가합니다. 또한 사전에 필요한 키-값 쌍을 생성하기 위해 각 문자에 키를 할당합니다. 예 in_string = "She sells sea
이 기사에서는 값이 목록으로 표시되는 사전을 고려합니다. 그런 다음 목록에서 해당 값을 지우는 것을 고려합니다. 여기에는 두 가지 접근 방식이 있습니다. 하나는 clear 방법을 사용하는 것이고 다른 하나는 list comprehension을 사용하여 각 키에 빈 값을 지정하는 것입니다. 예 x1 = {"Apple" : [4,6,9,2],"Grape" : [7,8,2,1],"Orange" : [3,6,2,4]} x2 = {"mango" : [4,6,9,2],&q
cmp()는 두 정수를 비교하는 파이썬 표준 라이브러리의 일부입니다. 비교 결과는 첫 번째 정수가 두 번째보다 작은 경우 -1이고 첫 번째 정수가 두 번째보다 큰 경우 1입니다. 둘 다 같으면 cmp()의 결과는 0입니다. 아래 예는 cmp() 메소드의 사용을 보여주는 다른 시나리오를 보여줍니다. 예시 def cmp(x, y): return (x > y) - (x < y) #x>y x = 5 y = 3 print("The cmp value for x>y is : ",c
이 기사에서는 문자열 데이터 유형을 포함하는 목록 목록을 만드는 방법을 볼 것입니다. 내부 목록 자체 또는 문자열 데이터 유형이며 숫자 또는 문자열을 요소로 포함할 수 있습니다. 스트립 및 분할 사용 먼저 목록을 분리한 다음 목록의 각 요소를 문자열로 변환하는 이 두 가지 방법을 사용합니다. 예시 list1 = [ '[0, 1, 2, 3]','["Mon", "Tue", "Wed", "Thu"]' ] print ("The g