정수 seq의 순열과 0에서 n - 1까지의 정수를 포함하는 크기 m의 정수 쌍 pairs 배열이 있다고 가정합니다. 이제 seq에 대해 다음 작업을 가능한 한 많이 수행하여 seq[ i] =i (0 ≤ i
n개의 도시가 있고 m개의 도로가 연결되어 있다고 가정합니다. 각 도로는 단방향이며 출발 도시에서 목적지 도시까지 도달하는 데 특정 시간이 걸립니다. 도로 정보는 각 요소가 형식(출처, 목적지, 시간)인 배열 도로에 제공됩니다. 이제 사람은 한 도시에서 다른 도시로 여행을 하고 있으며 그 여행은 왕복 여행이어야 합니다. 사람이 특정 도시에서 출발하여 하나 이상의 도로를 거쳐 같은 도시에서 여행을 마치는 경우 여행을 왕복이라고 할 수 있습니다. 따라서 각 도시에 대해 해당 도시에서 왕복이 가능한지 결정해야 합니다. 가능하면 왕복을 수
특정 제품에 대한 특정 부품을 만드는 제조업체가 있다고 가정합니다. 제조업체에는 n개의 서로 다른 부품 변형이 있으며 부품에는 세 가지 기준에 대한 특정 등급이 있습니다. n 제품의 등급은 각 요소가 (A, B, C) 형식인 배열 등급에 제공되며, 여기서 A, B 및 C는 제품의 다른 등급 기준입니다. 이제 OEM은 부품 제조업체로부터 생산하는 각 제품에 대해 m개의 부품을 구매하려고 합니다. OEM은 아래 조건을 만족하는 부품을 선택합니다 - 같은 부품을 두 개 이상 구입해서는 안 됩니다. V 값이 최대화되도록 부품 세
가능한 문자 0, 1 또는 ?가 있는 문자열 S가 있다고 가정합니다. ?가 나타날 때마다 교체하여 문자열 T를 만들고 싶습니다. 0 또는 1로. T의 불균형은 다음과 같습니다. S의 l번째와 r번째 문자 사이에서 0과 1의 발생 횟수 사이의 모든 절대 차이의 최대값, 여기서 0 <=l <=r
N개의 요소가 있는 숫자 A의 목록이 있다고 가정합니다. 요소는 1, 2 또는 3입니다. 숫자 X[1][j] =A[j]를 고려하십시오. 여기서 j는 범위 1에서 N까지입니다. 그리고 X[i][j] =|X[i-1][ j] - X[i-1][j+1]| 여기서 i는 2~N 범위에 있고 j는 1~N+1-i 범위에 있습니다. X[i][j]의 값을 찾아야 합니다. 따라서 입력이 A =[1,2,3,1]과 같으면 출력은 1이 됩니다. 왜냐하면 X[1][1] to X[1][4] are 1, 2, 3, 1 X[2][1], X[2][2], X[2][3
N개의 요소가 있는 배열 A가 있다고 가정합니다. N개의 상자가 있고 원으로 배열되어 있다고 가정합니다. i번째 상자에는 A[i] 스톤이 들어 있습니다. 다음 작업을 반복적으로 수행하여 상자에서 모든 돌을 제거할 수 있는지 확인해야 합니다. i번째 상자라고 하는 상자를 선택합니다. 범위 1에서 N까지의 각 j에 대해 (i+j)번째 상자에서 정확히 j개의 돌을 제거합니다. 여기서 (N+k)번째 박스를 k번째 박스라고 한다. 상자에 충분한 수의 돌이 들어 있지 않으면 이 작업을 수행할 수 없습니다. 따라서 입력이 A =[4, 5, 1
숫자 N이 있다고 가정합니다. 케이크 판매자가 각각 40루피의 케이크와 70루피의 도넛을 판매하고 있습니다. 정확히 N 루피로 몇 개를 살 수 있는지 확인해야 합니다. 따라서 입력이 N =110과 같으면 40 + 70 =110이므로 출력은 True가 됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − o := false Define a function dfs(), this will take i, if i > n, then: return false if i is same as n, then:
N개의 요소가 있는 배열 A가 있다고 가정합니다. N 고양이가 있고 1에서 N까지 번호가 매겨져 있다고 가정하십시오. 각 고양이는 모자를 쓰고 있고 i 번째 고양이는 나를 제외하고 고양이가 소유한 N-1 모자 중 정확히 A[i]개의 다른 색상이 있습니다라고 말합니다. 고양이들의 말과 일치하는 일련의 모자 색깔이 있는지 확인해야 합니다. 따라서 입력이 A =[1, 2, 2]와 같으면 출력은 True가 됩니다. 왜냐하면 고양이 1, 2 및 3이 각각 빨간색, 파란색 및 파란색 모자라는 색상의 모자를 쓰고 있다면 다음과 일치하기 때문입
통신 사업자가 k 달러의 고정 가격으로 n개의 OTT 콘텐츠 제공자에게 액세스를 제공하는 올인원이라는 서비스를 도입했다고 가정합니다. 이제 OTT 플랫폼에 직접 가입해야 하는 경우 각 플랫폼에 개별 금액을 지불해야 합니다. 우리는 항상 모든 플랫폼에 대한 구독이 필요하지 않으므로 해당 서비스를 비용 효율적으로 사용하는 방법을 찾아야 합니다. 플랫폼 i의 서비스가 필요한 시작 월은 배열 start_month에 제공되고 종료 월은 배열 end_month에 제공됩니다. 플랫폼에 가입하는 데 필요한 가격은 배열 가격[i]에 나와 있습니다.
차단된 것과 차단되지 않은 두 가지 유형의 셀을 포함하는 x * y 차원의 그리드가 제공된다고 가정합니다. 차단된 셀은 셀에 액세스할 수 없음을 의미하고 차단 해제는 셀에 액세스할 수 있음을 의미합니다. 차단된 셀은 #으로 표시되고 차단되지 않은 셀은 .로 표시되는 2D 배열로 그리드를 나타냅니다. 이제 셀(0, 0)에서 셀(x, y)까지 도달해야 합니다. 우리는 두 가지 이동만 수행할 수 있습니다. 세포 오른쪽으로 이동하거나 세포에서 아래로 이동할 수 있습니다. 우리는 차단되지 않은 셀에만 들어갈 수 있으며 (0, 0)과 (x,
주인공이 칼을 사용하여 적을 물리치는 비디오 게임을 하고 있다고 가정해 보겠습니다. 주인공은 칼을 사용하여 적을 베거나 적을 향해 던질 수 있습니다. 주인공이 칼을 던지면 다시 회수할 수 없다. 칼 i가 입힌 피해는 각 요소가 {slash, throw} 형식인 배열 knives에 표시됩니다. 베기는 그 칼로 적에게 베는 피해를 의미하고 던지기는 특정 칼을 던져 적에게 입히는 피해를 의미합니다. 베기는 횟수에 제한이 없지만 칼은 한 번만 던질 수 있습니다. 이제 체력을 가진 적이 나타납니다. h. 적을 물리치기 위해 필요한 최소한의
차단된 것과 차단되지 않은 두 가지 유형의 셀을 포함하는 h * w 차원의 그리드가 제공된다고 가정합니다. 차단된 셀은 셀에 액세스할 수 없음을 의미하고 차단 해제는 셀에 액세스할 수 있음을 의미합니다. 차단된 셀은 #으로 표시되고 차단되지 않은 셀은 .로 표시되는 2D 배열로 그리드를 나타냅니다. 이제 우리는 차단되지 않은 셀에서 그리드의 차단되지 않은 다른 셀로 도달해야 합니다. 우리는 두 가지 움직임만 수행할 수 있습니다. 수직으로 이동하거나 수평으로 이동할 수 있습니다. 우리는 대각선으로 이동할 수 없습니다. 우리는 차단되지
y1입니다. 따라서 입력이 x1 =0, y1 =1, x2 =3, y2 =4와 같으면 출력은 UURRRDDDLLLLUUURRRRDRDDDDLLLLU가 됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − s := a blank string for initialize i := 0, when i < y2 - y1, update (increase i by 1), do: add "U" at the end of s for initialize i := 0, when i < x2 - x1, update
빈 시퀀스와 처리해야 하는 n개의 쿼리가 있다고 가정합니다. 쿼리는 배열 쿼리로 제공되며 {query, data} 형식입니다. 쿼리는 다음 세 가지 유형이 될 수 있습니다. 쿼리 =1:시퀀스의 끝에 제공된 데이터를 추가합니다. 쿼리 =2:시퀀스의 시작 부분에 요소를 인쇄합니다. 그런 다음 요소를 삭제합니다. 쿼리 =3:시퀀스를 오름차순으로 정렬합니다. 쿼리 유형 2와 3은 항상 데이터 =0입니다. 따라서 입력이 n =9와 같으면 쿼리 ={{1, 5}, {1, 4}, {1, 3}, {1, 2}, {1, 1},
h * w 차원의 그리드가 있다고 가정합니다. 셀 위치(0, 0)에 로봇이 있고 위치(h - 1, w - 1)로 이동해야 합니다. 그리드에는 차단된 것과 차단되지 않은 두 가지 유형의 셀이 있습니다. 로봇은 차단되지 않은 세포는 통과할 수 있지만 차단된 세포는 통과할 수 없습니다. 로봇은 4가지 방향으로 갈 수 있습니다. 왼쪽, 오른쪽, 위, 아래로 이동할 수 있습니다. 그러나 로봇은 한 셀에서 다른 셀로 임의의 방향으로 이동할 수 있으므로(이전 셀은 무시) 한 경로만 만들고 해당 경로에 없는 다른 모든 셀을 차단해야 합니다. 로봇
n개의 꼭짓점과 m개의 모서리가 있는 가중치가 있는 무방향 그래프가 있다고 가정합니다. 그래프의 점수는 그래프의 모든 간선 가중치의 합으로 정의됩니다. 간선 가중치는 음수일 수 있으며 제거하면 그래프의 점수가 높아집니다. 우리가 해야 할 일은 그래프를 연결된 상태로 유지하면서 그래프에서 가장자리를 제거하여 그래프의 점수를 최소로 만들어야 합니다. 감소할 수 있는 최대 점수를 찾아야 합니다. 그래프는 각 요소가 {weight, {vertex1, vertex2}} 형식인 배열 가장자리로 제공됩니다. 따라서 입력이 n =5, m =6
첫 번째와 두 번째로 두 개의 n * n 픽셀 정사각형 이미지가 있다고 가정합니다. 픽셀은 검은색 또는 흰색일 수 있습니다. 이미지는 픽셀이 검은색이면 x로 표시되고 흰색이면 .로 표시되는 매트릭스 표현으로 제공됩니다. 90° 회전 및 번역 후 두 번째 이미지가 첫 번째 이미지와 일치하는지 확인해야 합니다. 그렇다면 true를 반환하고, 그렇지 않으면 false를 반환합니다. 따라서 입력이 n =4와 같으면 첫 번째 ={..x., x.x., x.xx, xx..}, 두 번째 ={..xx, x. xx, .x.x, ..x.}이면 출력은
빨간색 및 파란색 자동차 판매에 대한 수요가 있다고 가정합니다. 한 자동차 회사에서 p개의 빨간색 자동차와 q개의 파란색 자동차를 서로 다른 가격으로 판매하기로 결정했습니다. 현재 이 회사는 빨간색 차 b대, 파란색 차 c대(아직 도색되지 않은 차)를 보유하고 있다. A, B, C 배열로 서로 다른 차들의 값이 주어진다. 따라서 회사는 하루에 p + q의 차를 팔아야 하고 그 차에서 최대한의 이익을 얻어야 한다. 무색 자동차는 빨간색 또는 파란색의 모든 색상으로 칠할 수 있습니다. 우리는 자동차 판매로 얻을 수 있는 최대 이익을 찾
2n개의 문자가 있고 각각에 1에서 n 사이의 정수가 쓰여 있다고 가정합니다. 정확히 같은 숫자가 쓰여진 두 글자가 있습니다. 이 문자들은 m개의 스택으로 배열되고 스택 i에는 문자 스택[i]이 있습니다. 우리의 임무는 다음과 같은 방식으로 모든 스택을 비우는 것입니다. 두 개의 스택을 선택하고 둘 다에서 맨 위에 있는 문자를 제거해야 합니다. 제거한 문자는 둘 다 같은 번호여야 합니다. 이러한 방식으로 m개의 스택을 비울 수 있으면 true를 인쇄하거나 그렇지 않으면 false를 반환합니다. 따라서 입력이 n =
배열 nums에 n개의 정수가 있다고 가정합니다. 배열의 숫자가 pairwise coprime인지 setwise coprime인지 아니면 coprime이 아닌지 확인해야 합니다. 두 숫자 nums[i] 및 nums[j]는 gcd(nums[i], nums[j]) =1인 경우 쌍별 공소수(pairwise coprime)라고 합니다. 이것은 배열의 모든 숫자 쌍과 i