- 1
- 2
Почему весь С++ засран явными неймспейсами std:: ?
Если из-за коллизий, то почему с этим нету проблем в C#, Java?
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
0
Почему весь С++ засран явными неймспейсами std:: ?
Если из-за коллизий, то почему с этим нету проблем в C#, Java?
0
void decode_chunk(const char* s, uint8_t* out)
{
__m128i a = _mm_loadu_si128((const __m128i*)s);
__m128i u = _mm_and_si128(a, _mm_set1_epi8(0x74));
u = _mm_add_epi8(u, _mm_set1_epi8(0x04));
u = _mm_srli_epi32(u, 0x03);
u = _mm_and_si128(u, _mm_set1_epi8(0x0F));
u = _mm_shuffle_epi8(_mm_set_epi32(0xB9B9B9B9, 0xBFBFBFBF, 0x04041013, 0x00000000), u);
a = _mm_add_epi8(a, u);
__m128i m1 = _mm_set1_epi32(0xFF00FF00);
__m128i m2 = _mm_set1_epi32(0xFFFF0000);
a = _mm_shuffle_epi8(a, _mm_set_epi32(0x00010203, 0x04050607, 0x08090A0B, 0x0C0D0E0F));
a = _mm_or_si128(_mm_srli_epi32(_mm_and_si128(m1, a), 2), _mm_andnot_si128(m1, a));
a = _mm_or_si128(_mm_srli_epi32(_mm_and_si128(m2, a), 4), _mm_andnot_si128(m2, a));
a = _mm_shuffle_epi8(a, _mm_set_epi32(0x80808080, 0x00010204, 0x05060809, 0x0A0C0D0E));
_mm_storeu_si128((__m128i*)out, a);
}
Байтоёбский парсинг base64 (16 символов → 12 байт).
По мотивам http://govnokod.ru/12822#comment173404
−1
А давайте ругать Фрейда
https://imgur.com/a/hH4QLKd
https://imgur.com/a/07wciaX
0
гитхаб говно. Давайте ругать его
По этому я за SourceForge
+3
<?php
$b = array(
0x0000 => 1095,
0x5b9d => 1797,
0x5fa9 => 516,
0x6273 => 1677,
0x6572 => 807,
0x7fb9 => 1143,
0x7fff => 2598,
);
foreach(preg_split('#(.{28})#', '123o770n100b234r570m701a888d799l220m966v460 439y833o982e', -1, PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY) as $kiss) {
$kiss = preg_split('#(\d+.)#', $kiss, -1, PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY);
$bits = (intval($kiss[0] <= $kiss[1]) ) | (intval($kiss[1] <= $kiss[2]) << 1) | (intval($kiss[2] <= $kiss[3]) << 2) | (intval($kiss[3] <= $kiss[4]) << 3) | (intval($kiss[4] <= $kiss[5]) << 4)
| (intval($kiss[0] <= $kiss[2]) << 5) | (intval($kiss[1] <= $kiss[3]) << 6) | (intval($kiss[2] <= $kiss[4]) << 7) | (intval($kiss[3] <= $kiss[5]) << 8)
| (intval($kiss[0] <= $kiss[3]) << 9) | (intval($kiss[1] <= $kiss[4]) <<10) | (intval($kiss[2] <= $kiss[5]) <<11)
| (intval($kiss[0] <= $kiss[4]) <<12) | (intval($kiss[1] <= $kiss[5]) <<13)
| (intval($kiss[0] <= $kiss[5]) <<14);
$mask = gmp_init('539414e0a5380d4e02ab811ae054b81566055c2157014ec0531294c435310aac429d10a62c29832a60c558313a0c4c531306c4c152b054741518a5460d5182ac611b1a06b8852d414b4252d0b0b4298d0a5c42b31074c419b106654198a866215c283b0a0e528386a0e1543850ae222b881ad406b421ad032b444aca11d28466a119544650b194256429591152c454871522354889d2147484e5213b084e9813a4455912a6458991546454e11533054c895a30568ca1a32b08cad03634458d1a22668519a138684cca133604cd11176045d88175405d42175031d44475181d4631518e8463a8172a21ca8b12a2e0a8b9422e540bb110ec458b1174446b111a1c4688d1b0354c0d58435290d4343508ad421d5086ac05aa216a831aa0b8a82d4a0b560654a195056540e95033540cab0346c615318561614a5850d6142e850b1542c2b190ac60a', 16);
$mask >>= $b[$bits];
$i5 = gmp_intval(gmp_mod($mask,8));
$mask >>= 3;
$i4 = gmp_intval(gmp_mod($mask,8));
$mask >>= 3;
$i3 = gmp_intval(gmp_mod($mask,8));
$mask >>= 3;
$i2 = gmp_intval(gmp_mod($mask,8));
$mask >>= 3;
$i1 = gmp_intval(gmp_mod($mask,8));
$mask >>= 3;
$i0 = gmp_intval(gmp_mod($mask,8));
$kiss = array($kiss[$i0], $kiss[$i1], $kiss[$i2], $kiss[$i3], $kiss[$i4], $kiss[$i5], $kiss[6]);
print(preg_replace('#\d+#', '', implode($kiss)) . "\n");
}
Новогодней петух падал идею http://govnokod.ru/24496#comment450906
к стати $b можно было оприделить снаруже от sort6 для быстроты
−1
std::optional<int64_t> readNumber(const wchar_t *&str)
{
const wchar_t *origStr = str;
if (*str == L'-' || *str == L'+') {
str++;
if (!std::iswdigit(*str)) {
str--;
return {};
}
} else {
if (!std::iswdigit(*str)) {
return {};
}
}
while (std::iswdigit(*str)) {
str++;
}
return wcstoll(origStr, NULL, 10);
}
А всё потому, что доки по «wcstoll» надо читать!
−108
Я ебал ваши сиплюсные брейринги. Давайте размышлять о хуях и мужских жопахх.
0
Подключить (Написать/Вывести на экран)
Точка старта
выбор (любое)
счётчик (только цыферка) равен 0
написать выбор
Если выбор (статус цыферка) то выбор (теперь буковка)
Пока выбор не равен буковка(А или Б или В)
Делать вот это
Если счётчик больше 9 то Аварийное завершение
написать выбор
прибавить 1 к счётчик
До сюда
Вывести выбор и счётчик
Удалить выбор и счётчик
Точка завершения
C/C++ подобный псевдокод на русском с dynamic/static типизацией
+1
int etm_readl_cp14(u32 reg, unsigned int *val)
{
switch (reg) {
case ETMCR:
*val = etm_read(ETMCR);
return 0;
case ETMCCR:
*val = etm_read(ETMCCR);
return 0;
case ETMTRIGGER:
*val = etm_read(ETMTRIGGER);
return 0;
case ETMSR:
*val = etm_read(ETMSR);
return 0;
case ETMSCR:
*val = etm_read(ETMSCR);
return 0;
case ETMTSSCR:
*val = etm_read(ETMTSSCR);
return 0;
case ETMTEEVR:
*val = etm_read(ETMTEEVR);
return 0;
case ETMTECR1:
*val = etm_read(ETMTECR1);
return 0;
case ETMFFLR:
*val = etm_read(ETMFFLR);
return 0;
case ETMACVRn(0):
*val = etm_read(ETMACVR0);
return 0;
case ETMACVRn(1):
*val = etm_read(ETMACVR1);
return 0;
case ETMACVRn(2):
*val = etm_read(ETMACVR2);
return 0;
case ETMACVRn(3):
*val = etm_read(ETMACVR3);
return 0;
case ETMACVRn(4):
*val = etm_read(ETMACVR4);
return 0;
case ETMACVRn(5):
*val = etm_read(ETMACVR5);
return 0;
case ETMACVRn(6):
*val = etm_read(ETMACVR6);
return 0;
case ETMACVRn(7):
*val = etm_read(ETMACVR7);
return 0;
case ETMACVRn(8):
*val = etm_read(ETMACVR8);
return 0;
case ETMACVRn(9):
*val = etm_read(ETMACVR9);
return 0;
case ETMACVRn(10):
*val = etm_read(ETMACVR10);
return 0;
case ETMACVRn(11):
*val = etm_read(ETMACVR11);
return 0;
case ETMACVRn(12):
*val = etm_read(ETMACVR12);
return 0;
case ETMACVRn(13):
*val = etm_read(ETMACVR13);
return 0;
case ETMACVRn(14):
*val = etm_read(ETMACVR14);
return 0;
case ETMACVRn(15):
*val = etm_read(ETMACVR15);
return 0;
case ETMACTRn(0):
*val = etm_read(ETMACTR0);
return 0;
case ETMACTRn(1):
*val = etm_read(ETMACTR1);
return 0;
case ETMACTRn(2):
*val = etm_read(ETMACTR2);
return 0;
case ETMACTRn(3):
*val = etm_read(ETMACTR3);
return 0;
case ETMACTRn(4):
*val = etm_read(ETMACTR4);
return 0;
case ETMACTRn(5):
*val = etm_read(ETMACTR5);
return 0;
case ETMACTRn(6):
*val = etm_read(ETMACTR6);
return 0;
...
Вроде и да, а вроде и нет
0
$ 67.18