N의 일부 고정 값에 대해 배열 A는 정수 1, 2, ..., N의 순열일 때 아름답습니다. 다음과 같이 − 모든 i
정수 배열 A가 있다고 가정합니다. 여기에서 이동은 A[i]를 선택하고 1씩 증가시키는 것으로 구성됩니다. A의 모든 값을 고유하게 만들기 위해 최소 이동 수를 찾아야 합니다. 따라서 입력이 [3,2,1,2,1,7]과 같으면 출력은 6이 됩니다. 6이 이동하면 배열이 [3,4,1,2,5,7]이 될 수 있기 때문입니다. 어레이가 모든 고유 값을 가질 수 없다는 것을 5회 이하의 이동으로 표시할 수 있습니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − ret:=0 정렬 배열 A 어떤 값이 이전에 고려되는지 추
초기 전력 P, 초기 점수 0점, 토큰 한 봉지가 있다고 가정합니다. 이제 각 토큰은 최대 한 번만 사용할 수 있으며 값 토큰[i]이 있으며 잠재적으로 두 가지 사용 방법이 있습니다. 토큰[i] 파워 이상이면 토큰을 앞면이 보이도록 플레이하여 토큰[i] 파워를 잃고 1점을 얻을 수 있습니다. 그렇지 않으면 우리가 최소 1포인트를 가지고 있을 때 토큰을 뒤집어서 플레이하여 토큰[i] 파워를 얻고 1포인트를 잃을 수 있습니다. 많은 토큰을 플레이한 후 얻을 수 있는 가장 많은 점수를 찾아야 합니다. 따라서 입력이 토큰
카드 한 벌이 있다고 가정합니다. 모든 카드에는 하나의 고유 번호가 있습니다. 원하는 순서대로 데크를 주문할 수 있습니다. 따라서 처음에는 모든 카드가 한 데크에서 앞면이 보이지 않게(공개되지 않은) 시작됩니다. 이제 모든 카드가 공개될 때까지 다음 단계를 여러 번 수행합니다. - 카드 한 벌이 있다고 가정합니다. 모든 카드에는 하나의 고유 번호가 있습니다. 원하는 순서대로 데크를 주문할 수 있습니다. 따라서 처음에는 모든 카드가 한 데크에서 앞면이 보이지 않게(공개되지 않은) 시작됩니다. 이제 모든 카드가 공개될 때까지 다음
길이가 짝수인 정수 A의 배열이 있다고 가정하고 A[2 * i + 1] =2 * A[2 * i]와 같은 방식으로 재정렬할 수 있는 경우에만 true라고 말해야 합니다. 모든 0 <=i
연속으로 8개의 감옥이 있고 각 감옥에 죄수가 있거나 비어 있다고 가정합니다. 매일 다음 규칙에 따라 셀이 비어 있는지 여부가 변경됩니다. - 한 셀에 두 개의 인접한 이웃이 있고 둘 다 점유되어 있거나 모두 비어 있으면 해당 셀이 점유됩니다. 그렇지 않으면 비어 있게 됩니다. 우리는 감옥의 현재 상태를 다음과 같은 방식으로 설명할 것입니다:i번째 셀이 점유되어 있으면 cells[i]는 1이 될 것이고, 그렇지 않으면 cells[i]는 0이 될 것입니다. 따라서 우리는 감옥의 초기 상태를 가지고 N일 후에 감옥의
정수 배열 A가 있다고 가정하고 램프는 i
모든 연속 숫자 사이의 절대 차이가 K가 되도록 길이가 N인 모든 음이 아닌 정수를 찾아야 한다고 가정합니다. 답의 모든 숫자는 숫자 0 자체를 제외하고 선행 0이 없어야 함을 명심해야 합니다. 어떤 순서로든 답변을 반환할 수 있습니다. 따라서 N =3이고 K =7이면 출력은 [181,292,707,818,929]가 됩니다. 여기서 070은 선행 0이 하나 있기 때문에 유효한 숫자가 아님을 알 수 있습니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − dp라는 행렬 하나를 만들고 크기는 n + 1이 되고 1에서 9까지
A의 부분배열 A[i], A[i+1], ..., A[j]가 다음 조건을 충족할 때 난류라고 합니다. - k가 홀수일 때 i <=k A[k+1], k가 짝수일 때 A[k]
두 가지 작업을 지원하는 TimeMap이라는 시간 기반 키-값 저장소 클래스를 만들어야 한다고 가정합니다. set(string key, string value, int timestamp):주어진 타임스탬프와 함께 키와 값을 저장합니다. get(string key, int timestamp):이전에 timestamp_prev <=timestamp. 로 set(key, value, timestamp_prev)가 호출된 값을 반환합니다. 이제 이러한 값이 여러 개 있으면 timestamp_prev 값이 가장 큰 값을 반환
두 개의 정수 A와 B가 있다고 가정하고 모든 문자열 S를 반환해야 합니다. 다음과 같이 - S는 A + B의 길이를 가지며 정확히 A의 문자 a와 B의 b 문자를 포함합니다. 하위 문자열 aaa 및 bbb는 문자열 S에 없습니다. 따라서 주어진 정수가 A =4, B =1이면 결과는 aabaa가 됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − 문자열 ret를 정의하십시오. 처음에는 비어 있습니다. =2, B이면 ret :=ret aa 연결 A를 2만큼 감소 B가 0이 아닌
변수 사이의 관계를 나타내는 방정식이 배열인 경우 이제 각 문자열 방정식[i]은 길이가 4이고 a==b 또는 a!=b의 두 가지 다른 형식 중 하나를 취합니다. 여기서 및 b는 소문자로, 한 글자로 된 변수 이름을 나타냅니다. 따라서 주어진 모든 방정식을 만족시키기 위해 변수 이름에 정수를 할당할 수 있는 경우에만 참을 찾아야 합니다. 입력이 [a==b,b==c,a==c]와 같으면 대답은 true가 됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − getParent()라는 메서드를 정의합니다. 이것은 문자 x와
양의 정수 배열 A가 있다고 가정하고 이제 A[i]는 i번째 관광지의 값을 나타내고 두 개의 관광지 i와 j는 거리 j - i를 갖습니다. 이제 한 쌍의 관광 명소의 점수(i
이진 문자열 S와 양의 정수 N이 있다고 가정하고 1에서 N까지의 모든 정수 X에 대해 X의 이진 표현이 주어진 S의 부분 문자열인 경우에만 참이라고 말해야 합니다. 따라서 S =0110 이고 N =3이면 1, 10, 11이 모두 0110에 있으므로 결과가 참이 됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − n을 입력으로 사용하는 convert() 메서드를 정의합니다. ret :=빈 문자열 n이 0이 아닌 동안 ret :=ret n mod 2 연결 n :=n / 2 역방향 ret
숫자 N이 있다고 가정하고 밑수 -2(음수 2)에서 값을 나타내는 0과 1로 구성된 문자열을 찾아야 합니다. 문자열이 정확히 0이 아닌 경우 반환된 문자열에는 선행 0이 없어야 합니다. 따라서 입력이 2와 같으면 출력은 (-2)^2 + (-2)^1 + (-2)^0 =2와 같이 110이 됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − ret :=빈 문자열 N =0이면 0을 반환합니다. N이 0이 아닌 동안 rem :=N 모드(– 2) N :=N / (-2) rem <0이고 rem :=re
2D 배열 A가 주어졌다고 가정하고 이제 각 셀은 0(바다를 나타냄) 또는 1(땅을 나타냄)입니다. 여기에서 이동은 한 육지 광장에서 다른 육지 광장으로 4-방향으로 걷는 것으로 구성되거나 그리드의 경계에서 벗어납니다. 우리는 그리드의 경계에서 이동할 수 없는 그리드의 사각형 수를 찾아야 합니다. 따라서 그리드가 다음과 같은 경우 - 0 0 0 0 1 0 1 0 0 1 1 0 0 0 0 0 0으로 묶인 3개와 1로 묶이지 않은 1개가 있으므로 답은 3입니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − 방
T 초 동안 지속된 스포츠 경기의 일련의 비디오 클립이 있다고 가정합니다. 이제 이러한 비디오 클립은 서로 겹칠 수 있고 다양한 길이를 가질 수 있습니다. 여기에서 각 비디오 클립 클립[i]은 간격입니다. 클립[i][0] 시간에서 시작하여 클립[i][1] 시간에 끝납니다. 이 클립을 세그먼트로 자유롭게 자를 수 있습니다. - 전체 스포츠 이벤트([0, T])를 포함하는 세그먼트로 클립을 자를 수 있도록 필요한 최소 클립 수를 찾아야 합니다. 작업이 불가능한 경우 -1을 반환합니다. 따라서 입력이 [[0,2],[4,6],[8,10],
정수 배열 A가 있다고 가정하면 A에서 가장 긴 산술 부분 수열의 길이를 반환해야 합니다. A의 부분 수열은 목록 A[i_1], A[i_2], ..., A[ i_k] 0 <=i_1
두 개의 개별 수평선에 A와 B의 정수(주어진 순서대로)를 썼다고 가정합니다. 이제 연결선을 그릴 수 있습니다. 두 숫자 A[i]와 B[j]를 연결하는 직선은 다음과 같습니다. - A[i] ==B[j]; 다른 연결(수평이 아닌) 선과 교차하지 않는 우리가 그리는 선입니다. 연결선은 끝점에서도 교차할 수 없음을 명심해야 합니다. 각 번호는 하나의 연결선에만 속할 수 있습니다. 연결 라인의 최대 수를 찾으십시오. 따라서 입력이 [1,4,2] 및 [1,2,4]와 같으면 출력은 2가 됩니다. 1 4 2 1 2 4
값 N이 있다고 가정하고 A[0], A[i], ..., A[N-1]이라는 레이블이 지정된 정점이 있는 볼록한 N면 다각형이 시계 방향 순서라고 가정합니다. 이제 다각형을 N-2개의 삼각형으로 삼각측량하려고 한다고 가정합니다. 각 삼각형의 경우 해당 삼각형의 값은 꼭짓점 레이블의 곱이며 삼각형의 총 점수는 삼각형의 모든 N-2개 삼각형에 대한 이러한 값의 합이 됩니다. 우리는 다각형의 일부 삼각 측량으로 얻을 수 있는 가장 작은 총점을 찾아야 합니다. 따라서 입력이 [1,2,3]이면 다각형이 이미 삼각 측량되어 있고 유일한 삼각형의