Size: a a a

2020 March 29

АП

Александр Попов in Go-go!
Евгений Омельченко
А чо не мапу тогда?
знаю я их, они потом захотят вхождение отрезка в отрезок посмотреть, вместо точки
источник

АП

Александр Попов in Go-go!
нафиг :)
источник

RF

Roman Fedyashov in Go-go!
Подскажите пожалуйста где купить железо под этот алгоритм )))
источник

ЕО

Евгений Омельченко in Go-go!
Подозреваю, что правильный ответ какое-нибудь дерево отрезков
источник

АП

Александр Попов in Go-go!
Roman Fedyashov
Подскажите пожалуйста где купить железо под этот алгоритм )))
да ладно фигня, памяти не так много и сожрется
источник

АП

Александр Попов in Go-go!
загрузка киношки в плеер и то побольше выжрет
источник

ЕО

Евгений Омельченко in Go-go!
2^64 байт это эксабайты уже
источник

АП

Александр Попов in Go-go!
Roman Fedyashov
Подскажите пожалуйста где купить железо под этот алгоритм )))
на самом деле опять вы "читерите", вам этот алгоритм небось кто-то расказал/прочитали, а мне тут совсем с нуля выдумывать. Это на несколько порядков сложнее
источник

ЕО

Евгений Омельченко in Go-go!
@RomanFedyashov, как на счёт "разбить отрезки на непересекающиеся куски (их точно не более чем в полтора раза от изначальных), сохранить их в массив [2*n], где на чётных начало, на нечётных конец, карту соответствий изначальным кускам в массив [n] и дальше бинсёч"
источник

АП

Александр Попов in Go-go!
кстати я проверил :)
источник

АП

Александр Попов in Go-go!
var megaslice [][]int
for i:=0;i<=math.MaxInt64;i++ {
megaslice = append(megaslice, []int{0})
}
источник

АП

Александр Попов in Go-go!
относительно быстро, пол секунды
источник

ЕО

Евгений Омельченко in Go-go!
Единичку положи
источник

АП

Александр Попов in Go-go!
да хоть двойку
источник

АП

Александр Попов in Go-go!
func BenchmarkHello(b *testing.B) {
for i := 0; i < b.N; i++ {
 var megaslice [][]int
 for i:=0;i<=math.MaxInt64;i++ {
  megaslice = append(megaslice, []int{0, 1, 2})
 }
}
}
источник

ЛА

Локоть Анатолий in Go-go!
Евгений Омельченко
@RomanFedyashov, как на счёт "разбить отрезки на непересекающиеся куски (их точно не более чем в полтора раза от изначальных), сохранить их в массив [2*n], где на чётных начало, на нечётных конец, карту соответствий изначальным кускам в массив [n] и дальше бинсёч"
Это будет эффективнее простого перебора O(n)?
источник

АП

Александр Попов in Go-go!
в случа слайса вообще перебор не надо
источник

ЕО

Евгений Омельченко in Go-go!
Локоть Анатолий
Это будет эффективнее простого перебора O(n)?
Когда количество испытаний будет достаточно большое — да
источник

RF

Roman Fedyashov in Go-go!
Думаю что задача разбиения отрезков на непересекающиеся куски сама по себе сложная
источник

ЕО

Евгений Омельченко in Go-go!
Александр Попов
func BenchmarkHello(b *testing.B) {
for i := 0; i < b.N; i++ {
 var megaslice [][]int
 for i:=0;i<=math.MaxInt64;i++ {
  megaslice = append(megaslice, []int{0, 1, 2})
 }
}
}
Ты понимаешь, что MaxInt64 байта это 16 миллионов террабайт?
источник