1. Список говнокодов пользователя 3_dar

    Всего: 73

  2. C++ / Говнокод #27401

    +1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    vector<int> res;
    ...
    for (int i = 0; i < res.size(); i++) {
        printf("%d%c", res[i], " \n"[i + 1 == res.size()]);
    }

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

    3_dar, 07 Мая 2021

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

    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
    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
    template<typename T>
    class SharedPtr {
        T* value;
        int* ref_count;
    
    public:
        SharedPtr(T* value) : value(value) {
            ref_count = new int;
            *ref_count = 1;
        }
    
        SharedPtr(const SharedPtr& other) {
            value = other.value;
            ref_count = other.ref_count;
            (*ref_count)++;
        }
    
        SharedPtr(SharedPtr&& other) {
            value = other.value;
            ref_count = other.ref_count;
            other.ref_count = nullptr;
        }
    
        ~SharedPtr() {
            if (ref_count == nullptr) {
                return;
            }
    
            if (*ref_count == 1) {
                delete value;
                delete ref_count;
            } else {
                (*ref_count)--;
            }
        }
    
        T& operator *() const {
            return *value;
        }
    
        T* operator ->() const {
            return value;
        }
    };

    Реалейзовал минимальную версию shared_ptr. Есть ошибки/замечания?

    https://ideone.com/g7gqBM

    3_dar, 04 Мая 2021

    Комментарии (165)
  4. Python / Говнокод #27361

    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
    import cowsay
    cowsay.cow('Hello World')
    
    
      ___________
    < Hello World >
      ===========
                    \
                     \
                       ^__^
                       (oo)\_______
                       (__)\       )\/\
                           ||----w |
                           ||     ||

    3_dar, 15 Апреля 2021

    Комментарии (244)
  5. Python / Говнокод #27277

    0

    1. 1
    2. 2
    3. 3
    4. 4
    XRU = "XRU"
    PITUH = "PITUH",
    KUROCHKA = "KUROCHKA"
    PETUH = PITUH.replace('I', 'E')

    Traceback (most recent call last):
    File "./prog.py", line 4, in <module>
    AttributeError: 'tuple' object has no attribute 'replace'

    3_dar, 02 Марта 2021

    Комментарии (80)
  6. Куча / Говнокод #27275

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    require(ggplot2)
    
    x=-10:10
    X = data.frame(x=x, y=x^2, col=ifelse(x > 0, 1, 2))
    
    ggplot(X, aes(x, y)) + geom_point(aes(colour=col))

    Очевидный и понятный интерфейс, да?

    3_dar, 27 Февраля 2021

    Комментарии (9)
  7. JavaScript / Говнокод #27274

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    var object = {a: 123, b:"abc"};
    var newObject = ko.observableProps(object);
    newObject.a(345);
    newObject.b("def");
    
    newObject.a(); => 345
    newObject.b(); => "def"

    Ко-ко-ко-ко-ко-обсервабле

    3_dar, 27 Февраля 2021

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

    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
    25. 25
    #include <iostream>
    #include <ctime>
    using namespace std;
    
    #define SIZE 200000000
    
    struct StackRazrivator {
    	int data[SIZE];
    };
    
    void razorvi() {
    	cout << "nachinau razrivat\n";
    	StackRazrivator r;
    }
    
    void razrivator() {
    	cout << "razrivator\n";
    	razorvi();
    }
    
    int main() {
        cout << "start" << endl;
    	razrivator();
    	return 0;
    }

    Что выведет программа, если скомпилировать без оптимизаций и почему?

    https://godbolt.org/z/75Yzer

    3_dar, 20 Февраля 2021

    Комментарии (64)
  9. Java / Говнокод #27258

    +1

    1. 1
    .

    https://vc.ru/flood/149783-podgotovte-nomer-pablik-steytik-dzhava-tochka-pomoshchnik-oleg-zachital-sboy-vo-vremya-testa-v-koll-centre-tinkoff

    3_dar, 17 Февраля 2021

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

    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
    // foo.h
    namespace Xru {
    struct Foo {
        Foo();
    };
    }
    
    // foo1.cpp
    #include <foo.h>
    using namespace Xru;
    Foo::Foo() {}
    
    // foo2.cpp
    #include <foo.h>
    namespace Xru {
    Foo::Foo() {}
    }

    Вы пишите как 1 или 2?
    До меня другой коллега доёбуецца, что нужно как 2.

    3_dar, 10 Февраля 2021

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

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    struct Foo { Foo(int, int); };
    struct Bar { explicit Bar(int, int); };
    
    Foo f1(1, 1); // ok
    Foo f2 {1, 1}; // ok
    Foo f3 = {1, 1}; // ok
    
    Bar b1(1, 1); // ok
    Bar b2 {1, 1}; // ok
    Bar b3 = {1, 1}; // NOT OKAY

    А вы пишите explicit у коньструкторов? До меня коллега доёбуецца, что я не пишу.

    3_dar, 10 Февраля 2021

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