Поиск

топ 100 блогов lex_kravetski30.08.2012 Кстати, придумал задачу для любителей запаха монад по утрам, да и вообще для заинтересованных.

Есть у нас данные на сетке. Для простоты они сложены в двумерный массив. Данные намерянны каким-то прибором, который мог сломаться, что мы, в частности, узнаём по наличию в любой точке сетки значения, превышающего заранее заданную величину maxValue. Нам надо выяснить, не сломался ли прибор как минимум по этому критерию, но не просто выяснить, а ещё показать любое значение, превысившее максимальное — чисто для пафоса. У вас-де вот в этой точке аж вот столько, чините прибор.

Решение задачи с императивным подходом просто и прозаично.

int value = 0; 
a: for (int x = 0; x < xSize; x++) {
    for (int y = 0; y < ySize; y++) {
        int v = data[x][y];
        if (v > maxValue) {
            value = v;
            break a;
        }
    }
}


Прозаично, понятно и правильно работает, но не круто. Круто написать то же самое не просто на Scala, но с for-comprehension или с использованием каких-то методов scala-коллекций и без break. При этом написать так, чтобы оно было короче и не имело существенных просадок по производительности в сравнении с данным конкретным примером.

Дерзайте, друзья.

Оставить комментарий

Предыдущие записи блогера :
Архив записей в блогах:
А как зимние каникулы у вас? ...
Главный путинский пропагандон вчера брал интервью у министра Лаврова и возмущался американцами: мол, почему они считают нас проигравшими в холодной войне? Ведь они даже не проводили своего парада победы над нами на Красной площади? Напоминаю этому самодовольному индюку: мы проиграли США ...
Сегодня 1 июня - день защиты детей. Все мы родом из детства. Мы взрослеем, мудреем и приобретаем бесценный жизненный опыт, но внутри каждого из нас живет мальчишка или девчонка. Мы радуемся как дети, когда видим яркие и  веселые игрушки, мы становимся беззаботными и с ...
Отмечали Старый Новый Год. Разговоры у нас  всегда текут непредсказуемо, текут и текут. Не знаю, каким образом, но возник разговор об этой фотографии Это мой отец. На обороте фотографии вот что Судя по подписи, отец не решил)). Я пробовала этот пример решить в старших классах ...
Что-то как-то не заметно оттока машинопотока в связи с окончанием школьного сезона. А ты зеленый и скользкий, когда и куда отправишь своих киндеров из Москвы на х...(как бы помягче про детей-то) хороший отдых в болотах? И да, чтобы два раза не ...