Вот код Java для максимальной суммы подмассива по модулю. Мы рассмотрим случай, когда мы не можем найти наименьший элемент в дереве, строго превышающий s [i]
public static long maxModulo(long[] a, final long k) {
long[] s = new long[a.length];
TreeSet<Long> tree = new TreeSet<>();
s[0] = a[0] % k;
tree.add(s[0]);
long result = s[0];
for (int i = 1; i < a.length; i++) {
s[i] = (s[i - 1] + a[i]) % k;
// find least element in the tree strictly greater than s[i]
Long v = tree.higher(s[i]);
if (v == null) {
// can't find v, then compare v and s[i]
result = Math.max(s[i], result);
} else {
result = Math.max((s[i] - v + k) % k, result);
}
tree.add(s[i]);
}
return result;
}
Это обычная проблема. У вас почти наверняка возникнут проблемы с разрешениями. Чтобы решить эту проблему, убедитесь, что пользователь apache
имеет доступ для чтения / записи ко всему вашему репозиторию. Для этого chown -R apache: apache *
, chmod -R 664 *
для всего, что находится в вашем репозитории svn.
Также см. здесь и здесь , если вы все еще застряли.
Строка «664» - это восьмеричное (основание 8) представление разрешений. Здесь три цифры, обозначающие разрешения для владельца , группы и всех остальных (иногда называемых «миром») соответственно для этого файла или каталога. .
Обратите внимание, что каждая цифра с основанием 8 может быть представлена 3 битами (от 000 для «0» до 111 для «7»). Каждый бит означает что-то:
Например, 764 в файле будет означать, что:
Надеюсь, что очищается все вверх!
Попробуйте отключить SELinux с помощью этой команды / usr / sbin / setenforce 0
. В моем случае это решило проблему.