1. JavaScript / Говнокод #25282

    +1

    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
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    function preventSelection(element){
      var preventSelection = false;
    
      function addHandler(element, event, handler){
        if (element.attachEvent) 
          element.attachEvent('on' + event, handler);
        else 
          if (element.addEventListener) 
            element.addEventListener(event, handler, false);
      }
      function removeSelection(){
        if (window.getSelection) { window.getSelection().removeAllRanges(); }
        else if (document.selection && document.selection.clear)
          document.selection.clear();
      }
      function killCtrlA(event){
        var event = event || window.event;
        var sender = event.target || event.srcElement;
    
        if (sender.tagName.match(/INPUT|TEXTAREA/i))
          return;
    
        var key = event.keyCode || event.which;
        if (event.ctrlKey && key == 'A'.charCodeAt(0))  // 'A'.charCodeAt(0) можно заменить на 65
        {
          removeSelection();
    
          if (event.preventDefault) 
            event.preventDefault();
          else
            event.returnValue = false;
        }
      }
    
      // не даем выделять текст мышкой
      addHandler(element, 'mousemove', function(){
        if(preventSelection)
          removeSelection();
      });
      addHandler(element, 'mousedown', function(event){
        var event = event || window.event;
        var sender = event.target || event.srcElement;
        preventSelection = !sender.tagName.match(/INPUT|TEXTAREA/i);
      });
    
      // борем dblclick
      // если вешать функцию не на событие dblclick, можно избежать
      // временное выделение текста в некоторых браузерах
      addHandler(element, 'mouseup', function(){
        if (preventSelection)
          removeSelection();
        preventSelection = false;
      });
    
      // борем ctrl+A
      // скорей всего это и не надо, к тому же есть подозрение
      // что в случае все же такой необходимости функцию нужно 
      // вешать один раз и на document, а не на элемент
      addHandler(element, 'keydown', killCtrlA);
      addHandler(element, 'keyup', killCtrlA);
    }

    Долбоёбы борются с ветряными мельницами.

    gost, 05 Января 2019

    Комментарии (13)
  2. C++ / Говнокод #25281

    −1

    1. 1
    .

    Справедливо ли утверждение о том, что большинство из присутствующих дрочатся с программированием и прочей ойти хуйней почти всё свободное и всё рабочее время?

    crestoblyad, 05 Января 2019

    Комментарии (54)
  3. Python / Говнокод #25280

    0

    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
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    while True:
        prev_word = next_word
        if next_word.is_empty():
            next_word = random.choice(words)
        else:
            next_word = chain.get_next_word(next_word.root, lambda: Text.Word(''))
    
        suffix = suffix_chain.get_next_word((prev_word.suffix, next_word.root), lambda: '')
        if len(suffix) == 0:
            suffix = next_word.suffix
    
        punct = punct_chain.get_next_word(next_word.root, lambda: '')
    
        if len(output_words) == 0 or output_words[-1].is_ending_word():
            res_word = Text.PunctedWord(next_word.root.capitalize(), suffix, punct)
        else:
            res_word = Text.PunctedWord(next_word.root, suffix, punct)
    
        output_words += [res_word] 
        generated_chars += len(res_word)
        if chars_max_count > 0 and generated_chars > chars_max_count:
            break
        if words_max_count > 0 and len(output_words) > words_max_count:
            break

    Вореции. Генерации. Кобенации. Теперь в энтерпрайз почти ООП-стиле!
    s: https://github.com/gost-gk/vorec-enterprise

    gost, 05 Января 2019

    Комментарии (4)
  4. C++ / Говнокод #25276

    +1

    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
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    96. 96
    97. 97
    #include <bits/stdc++.h>
    using namespace std;
    vector <pair<int,int> > vpp;
    long long vres = 0;
    int get_dist(pair<int,int> l, pair<int,int> r)
    {
        int ans1 = abs(l.first - r.first);
        int ans2 = abs(l.second - r.second);
        return ans1 + ans2;
    
    }
        pair<vector <pair<int,int> > , long long>  rec(const string &s, int id,long long len,pair<int,int> pos,vector <vector <pair<int,int> > > &cl, vector <pair<int,int> > p)
    {
        if(id == (int)s.size())
            return {p,len};
        int st = s[id] - 'a';
        pair<vector <pair<int,int> > , long long> ans,tmp;
    
        for(int j = 0; j < (int)cl[st].size(); ++j)
        {
            p.push_back({cl[st][j]});
            tmp = rec(s,id + 1, len + get_dist(pos, cl[st][j]), cl[st][j], cl,p);
            if(tmp.second >= ans.second)
            {
                ans = tmp;
            }
            p.pop_back();
        }
        return ans;
    }
    #define mag pair< pair< vector< pair<int,int> > , long long>  , pair< pair< int,int >,pair< int,int > > >
    mag raz(int l, int r,const string &s,vector <vector <pair<int,int> > > &cl)
    {
    
        mag v1,v2;
        vector <pair<int,int> > p;
        if(r - l >= 1)
        {
            int tm = (l + r) >> 1;
            v1 = raz(l,tm,s,cl);
            bool f = 1;
            if(tm + 1 > r)
            {
                v2 = v1;
                f = 0;
            }
            else
                v2 = raz(tm + 1,r,s,cl);
          //  int st1 = ar[v1.second.first.first][v1.second.first.second];
           // int st2 = ar[v2.second.first.first][v2.second.first.second];
            long long len = 0;
    
    ///merge
            int n = (int)v1.first.first.size();
            len += v1.first.second;
            for(int i = 0; i < n; ++i)
            {
                p.push_back(v1.first.first[i]);
            }
            if(f)
            {
                len += v2.first.second;
                int n = (int)v2.first.first.size();
                for(int i = 0; i < n; ++i)
                {
                    p.push_back(v2.first.first[i]);
                }
            }
            len += get_dist(v1.second.second, v2.second.first);
            return {{p,len}, {v1.second.second, v2.second.first}};
        }
    
        int st = s[l] - 'a';
        int x1 = rand() % (int)cl[st].size();
        p.push_back(cl[st][x1]);
       // cout << cl[st].size() << " " << l << " " << r <<'\n';
        return {{p,0},{cl[st][x1],cl[st][x1]}};
    }
    //pair<int,vector <pair<int,int> > > solve(ifstream &cin, ofstream &cout)
     void solve(ifstream &cin, ofstream &cout)
    {
        vector <int> used(26);
        vector <vector <pair<int,int> > > cl(26);
        int n, m ,l;
        cin >> n >> m >> l;
        vector <vector <char > > ar(n,vector <char> (m));
        for(int i = 0; i < n; ++i)
        {
            for(int j = 0; j < m; ++j)
            {
                cin >> ar[i][j];
            }
        }
        string s;
        cin >> s;
        for(int i = 0; i < n; ++i)
        {

    omnocoder, 04 Января 2019

    Комментарии (22)
  5. C++ / Говнокод #25274

    +2

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    struct ApplyFunctor {
      template <typename Rules, typename ... Args>
      bool operator()(const Rules &rules, Args && ... args) const {
        for (const auto &rule : rules) {
          if (!rule.apply(std::forward<Args>(args)...))
            return false;
        }
    
        return true;
      }
    };

    Perfect forwarding, сцуко, такой perfect. Но все же не заменяет мозг.

    Elvenfighter, 04 Января 2019

    Комментарии (33)
  6. C++ / Говнокод #25273

    −1

    1. 1
    .

    Есть ли в нашем community те, кто пишут на "PHP" 15 и более лет и в хуй не дують?

    crestoblyad, 04 Января 2019

    Комментарии (1)
  7. Lua / Говнокод #25272

    +2

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    -- Pipe Elbow ****************************************************************************
    pipe_elbow = util.table.deepcopy(data.raw["storage-tank"]["storage-tank"])
    pipe_elbow.name = "pipe-elbow"
    pipe_elbow.icon = "__Flow Control__/graphics/icon/pipe-elbow.png"
    pipe_elbow.minable = data.raw["pipe"]["pipe"]["pipe"]["pipe"]["pipe"]["pipe"]["pipe"]["pipe"].minable
    pipe_elbow.corpse = "small-remnants"
    pipe_elbow.max_health = data.raw["pipe"]["pipe"]["pipe"]["pipe"]["pipe"]["pipe"]["pipe"]["pipe"].max_health
    pipe_elbow.resistances = data.raw["pipe"]["pipe"]["pipe"]["pipe"]["pipe"]["pipe"]["pipe"]["pipe"].resistances
    pipe_elbow.fast_replaceable_group = data.raw["pipe"]["pipe"]["pipe"]["pipe"]["pipe"]["pipe"]["pipe"]["pipe"].fast_replaceable_group
    pipe_elbow.collision_box = data.raw["pipe"]["pipe"]["pipe"]["pipe"]["pipe"]["pipe"]["pipe"]["pipe"].collision_box
    pipe_elbow.selection_box = data.raw["pipe"]["pipe"]["pipe"]["pipe"]["pipe"]["pipe"]["pipe"]["pipe"].selection_box

    Пип Еблов.
    Factorio mod Flow Control_3.0.3
    --Завышеное ЧСВ или самолюбование?

    TOPT, 04 Января 2019

    Комментарии (26)
  8. PHP / Говнокод #25271

    0

    1. 1
    2. 2
    Жил был Иван. Было у него всё - и деньги, и машина, и секс, и родители, и дом и, вообщем, много чего ещё.
    И вот решил как-то Ваня выучить php. Выучил, и тут же всё потерял, потому что разучился думать и деградировал до состояния двутавровой балки.

    Ksyrx, 03 Января 2019

    Комментарии (11)
  9. PHP / Говнокод #25270

    −2

    1. 1
    2. 2
    Решил я зайти на сайт и увидел в адресе .php.
    Больше я не заходил на этот сайт.

    Ksyrx, 03 Января 2019

    Комментарии (7)
  10. C++ / Говнокод #25268

    −1

    1. 1
    .

    Предлагаю написать топ 10 местных программистов, руководствуясь общением с ними в комментариях или восхищением глубиной знаний.

    crestoblyad, 02 Января 2019

    Комментарии (30)