1. Python / Говнокод #13469

    −110

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    #!/usr/bin
    dim1, dim2 = map(int, raw_input().split())
    cake = []
    ans = sub = 0
    for _ in xrange(dim1):
        cake.append(set( f for f,r in enumerate(raw_input()) if r == '.' ))
        if len(cake[-1]) == dim2:
            ans += dim2
            sub += 1
    sub = dim1 - sub
    wok = cake[0]
    for r in xrange(1, dim1):
        wok &= cake[r]
    print ans + ( len(wok) * sub )

    http://codeforces.ru/contest/330/submission/4115416
    задача http://codeforces.ru/problemset/problem/330/A
    Дан квадратный торт, который имеет вид таблицы размером r × c. Каждая ячейка таблицы содержит либо гадкую клубничку('S', либо является пустой('.')

    Тортминатор намерен съесть этот торт! Каждый раз, когда он ест, он выбирает строку или столбец, не содержащие гадкой клубнички, а содержащие по крайней мере одну несъеденную ячейку торта. Затем Тортминатор поедает все выбранные им ячейки торта. Тортминатор может есть сколько угодно раз.

    Пожалуйста, выведите максимальное количество ячеек, которые может съесть Тортминатор.

    Запостил: AvadaKedavra, 24 Июля 2013

    Комментарии (46) RSS

    • Даже не лаба, а школьное задание
      Ответить
    • показать все, что скрыто
      * g o a t s e x * g o a t s e x * g o a t s e x *
      g                                               g  
      o /     \             \            /    \       o
      a|       |             \          |      |      a
      t|       `.             |         |       :     t
      s`        |             |        \|       |     s
      e \       | /       /  \\\   --__ \\       :    e
      x  \      \/   _--~~          ~--__| \     |    x  
      *   \      \_-~                    ~-_\    |    *
      g    \_     \        _.--------.______\|   |    g
      o      \     \______// _ ___ _ (_(__>  \   |    o
      a       \   .  C ___)  ______ (_(____>  |  /    a
      t       /\ |   C ____)/      \ (_____>  |_/     t
      s      / /\|   C_____)       |  (___>   /  \    s
      e     |   (   _C_____)\______/  // _/ /     \   e
      x     |    \  |__   \\_________// (__/       |  x
      *    | \    \____)   `----   --'             |  *
      g    |  \_          ___\       /_          _/ | g
      o   |              /    |     |  \            | o
      a   |             |    /       \  \           | a
      t   |          / /    |         |  \           |t
      s   |         / /      \__/\___/    |          |s
      e  |           /        |    |       |         |e
      x  |          |         |    |       |         |x
      * g o a t s e x * g o a t s e x * g o a t s e x *
      Ответить
    • > Тортминатор

      дальше не читал
      Ответить
      • А как же гадкая клубничка* ? :)

        * Судя по всему, клубничка про 80-90 летних заплывших жиром бабушек-лиллипутов жрущих говно пишущих говнокод.
        Ответить
    • >#!/usr/bin
      facepalm.jpg

      Чет хуйня какая-то нечитаемая.
      Ответить
      • хз,что он(а) делает, наверно забыла тупо)
        Ответить
        • >забыла
          Телка на говнокоде? ОПЯТЬ?
          Ответить
          • хз, по фотке вроде да, но ник у нее Чак Норрис
            Ответить
            • У кого?
              Ответить
              • http://codeforces.ru/profile/Re_cursive - автор кода фото с инета скачал(а), так что хер поймешь , кто это
                Ответить
                • А что тогда значит
                  >наверно забыла тупо)
                  Ответить
                  • я про #/usr/bin/
                    Ответить
                  • я забыл (а)
                    Ответить
                    • > я забыл (а)
                      Что-за неопределенность... Редко можно увидеть такое с местоимением "Я" ;)
                      Ответить
                      • Гендерная дисфория. На самом деле это анонимность 90-го уровня, когда собеседник скрывает о себе всё, даже возраст и пол, а возможно и биологический вид.

                        В этом плане блогоплатформа Я.ру демократична: она позволяет указать в профиле средний пол, чтобы в ленте новостей выводилось что-то типа: «AvadaKedavra добавило фотки и сменило настроение».
                        Ответить
                        • Моя одобрять.
                          Ответить
                        • > она позволяет указать в профиле средний пол
                          Всяко нельзя указать множественное число, чтобы выводилось "bormand добавили фотки и сменили настроение". А это дискриминация лиц с раздвоением личности.

                          > пол
                          Тогда надо 50% постов писать в мужском роде и 50% в женском. Иначе из-за bias'а могут догадаться о реальном поле.
                          Ответить
                          • >пол: надо писать так как я : я добавил(о) что-о там
                            Ответить
                            • я(мы) добавил(а,о,и) что-то там
                              Ответить
                            • Ну или всегда юзать бесполый вариант или страдательные залоги - мной был установлен статус и добавлены фотки.
                              Ответить
                              • мной(нами)
                                Ответить
                                • Ок. Был установлен статус и добавлены фотки. Тогда никто не докажет, что это сделал именно я ;) Неизвестно же кем он был установлен.
                                  Ответить
                                  • это еще на тот случай, если я считаю, что меня не существует
                                    Ответить
                              • English-style:
                                я имею установленные фотки и обновлённый статус.
                                Ответить
                      • DEL
                        Ответить
    • Ну и вообще, некрасиво так делать. Форыч не для этого сделан.
      for r in xrange(1, dim1):
          wok &= cake[r]


      for с in cake[1:]:
          wok &= c

      Или, если гимороит срез, заглянуть в itertools.
      Ответить
    • На минутку: все строки и столбцы с клубникой остаются нетронутыми. Тогда если мы удалим из таблицы все строки и столбцы с клубникой, останется меньшая таблица из тех ячеек, которые тортминатор может съесть.
      Тогда N = (r-r')*(c-c'), где r,c - размер торта, r' - число строк содержащих клубнику, c' - число столбцов, содержащих клубнику.

      А нет, фигню сморозил...
      Ответить
      • Так, понял. "Неуязвимы" ячейки, имеющие клубнику на той же строке и том же столбце (это число включает себя ячейки с клубникой).
        Тогда N = r*c - r'*c'
        Ответить
        • ну да, так и есть
          Ответить
        • > N = r*c - r'*c'
          Я считал немного по-другому - съесть можно r-r' строк длиной c и c-c' столбцов длиной r, при этом (r-r')*(c-c') ячеек учтены 2 раза, и их нужно вычесть. Результат получается точно такой же, значит, скорее всего, ответ верный.
          Ответить
          • Ну да, это эквивалентные выражения, если раскрыть скобки - получится то же самое)
            Ответить
    • Да хорош уже со спортивным программированием. Если захотеть, то можно уютненькое-2 открывать только на основе сабмитов с Codeforces. Да и вообще в порыве творчества, особенно когда важна каждая минута, трэш рождается еще тот.
      Ответить
      • > Да хорош уже со спортивным программированием.
        +1

        > когда важна каждая минута, трэш рождается еще тот
        Именно так. В свое время не раз доводилось участвовать в подобных мероприятиях. И во время игры последнее о чем думаешь, это качество кода ;).

        А насчет оптимальности и эффективности алгоритмов - в лимиты по времени и памяти пролезло и ладно, ведь чем раньше отправил - тем больше очков, и больше времени на следующие задачи... Каждая минута на счету.

        Поэтому любой спортивный код по определению говно, и ничего плохого в этом нет.
        Ответить

    Добавить комментарий