За 18 минут решил задачку на codility. Этот сайт мне порекоммендовал коллега для тренировки алгоритмики. Решение получилось вот такое
class Solution {
public int falling_disks ( int[] A,int[] B ) {
int N = A.length;
int M = B.length;
for(int i = 1; i < N; i++){
if (A[i - 1] < A[i]){
A[i] = A[i - 1];
}
}
int k = 0;
int j = N;
while (k < M && j > 0){
while (A[--j] < B[k]){
if (j == 0){
return k;
}
}
k++;
}
return k;
}
}
Там даже сертификаты выдают за это дело. Вот мой типа.

Комментариев нет:
Отправить комментарий