-
Лучший говнокод
- В номинации:
-
- За время:
-
-
+1
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
select
x1.airport, x1.amount, x1.exempt
from
Taxes x1
where
x1.code = 'departure'
and x1.airport in (
select
xx1.airport
from
(select
yx1.airport
from
Taxes yx1
where
yx1.airport = x1.airport
and yx1.code = x1.code
group by
yx1.airport, yx1.amount, yx1.exempt
) xx1
group by xx1.airport
having count(xx1.airport) > 1
)
;
Давно я не копался в SQL. Вот что нагородил :(
Суть такова: у аэропортов есть departure tax, который может быть разный в зависимости от некоторых критериев (нерелевантно каких).
А может быть и одинаковый. Но все равно аэропорт может иметь несколько рядков в БД (с одинаковым amount). А еще может быть exempt = 'X',
что тождественно amount = 0.
Задача: выбрать все рядки с departure tax для аэропортов у которых taxamt/exempt разный в зависимости от некоторых других критериев.
Elvenfighter,
10 Мая 2018
-
+1
- 1
- 2
- 3
- 4
- 5
- 6
...
# uncomment for a colored prompt, if the terminal has the capability; turned
# off by default to not distract the user: the focus in a terminal window
# should be on the output of commands, not on the prompt
#force_color_prompt=yes
...
.bashrc по умолчанию в Xubuntu.
Мне казалось, что приглашение должно быть другого цвета, чтобы можно было быстро найти начало вывода программы:
user@computer:~$ cat blah.txt
<много текста>
<много текста>
<много текста>
<много текста>
<много текста>
Но тут, понимаешь, решили, что нечего цвета разводить.
Steve_Brown,
06 Мая 2018
-
+1
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
#include <stdio.h>
int main()
{
for (int x; scanf("%d", &x);) {
#define x x += x
x & (x-1);
printf("%d\n", x);
}
return 0;
}
https://ideone.com/SxgTL0
-3 -28
-2 -20
-1 -12
0 -4
1 4
2 12
3 20
Ничо нипанятна...
yet_another_one_shit,
01 Мая 2018
-
+1
Написавший это утверждает, что меняется содержимое памяти, но как происходят эти мистические изменения он объяснить не может.
Ioann_Zid,
01 Мая 2018
-
+1
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
public static class MyExtensions {
private static Random _random = new Random();
public static bool IsMnogo(this object value) {
try {
var n = double.Parse(value.ToString());
return n > 9999999999;
} catch {
return true;
}
}
public static bool IsDavno(this DateTime value) {
return value < new DateTime(1900 + _random.Next(10, 90), 04, 17);
}
}
mazhuravlev,
21 Апреля 2018
-
+1
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
#include <stdio.h>
#include <string.h>
#include <sodium.h>
#include <stdlib.h>
#include <unistd.h>
void reverse(char s[]);
void itoa(int n, char s[]);
int main()
{
if(sodium_init() < 0) {
printf("Паника! Библиотека не может быть инициализирована, небезопасно использовать.\n");
return 1;
}
#define STR_LEN 30
char str[STR_LEN];
for(unsigned long i = 0; i < STR_LEN; ++i) {
if(randombytes_uniform(2) == 0)
str[i] = 48;
else
str[i] = 49;
}
printf("%s\n", str);
while(1) {
for (unsigned long i = 0; i < strlen(str); i+=2)
{
if(str[i] == '0' && str[i+1] == '0' && str[i+2] == '0')
str[i+1] = '1';
else if(str[i] == '1' && str[i+1] == '0' && str[i+2] == '0')
str[i] = '0', str[i+2] = '1';
else if(str[i] == '1' && str[i+1] == '0' && str[i+2] == '0')
str[i+2] = '1', str[i] = '0';
else if(str[i] == '1' && str[i+1] == '1' && str[i+2] == '1')
str[i+1] = '0', str[i] = '0';
else if(str[i] == '0' && str[i+1] == '1' && str[i+2] == '1')
str[i] = '1';
else if(str[i] == '1' && str[i+1] == '0' && str[i+2] == '1')
str[i] = '0', str[i+1] = '1';
else if(str[i] == '0' && str[i+1] == '0' && str[i+2] == '1')
str[i] = '1', str[i+1] = '1', str[i+2] = '0';
else if(str[i] == '0' && str[i+1] == '1' && str[i+2] == '0')
str[i+2] = '1';
else if(str[i] == '1' && str[i+1] == '1' && str[i+2] == '1')
str[i] = '0', str[i+2] = '0';
else if(str[i] == '1' && str[i+1] == '1' && str[i+2] == '0')
str[i+1] = '0';
}
printf("%s\n", str);
sleep(1);
}
return 0;
}
10 простых правил и бесконечный вывод триллиардов иттерация которые никогда не кнчатся! ЭТО НОНСЕНС
fuckercoder,
11 Апреля 2018
-
+1
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
bool kiemtraso(std::string &a,int i)
{
char N[4];
/* N[0]=a[i+0];
N[1]=a[i+1];
N[2]=a[i+2];*/
for(int n=0;n<3;n++)
{
N[n]=a[i+n];
}
if(atoi(N)>255) return 0;
return 1;
}
bool isIPv4Address(std::string inputString)
{
int n=inputString.length();
//3 dau cham=====================================гугл перевел: "3 часа ночи"
int dem=0;
for(int i=0;i<n;i++)
{
if(inputString[i]==46) dem++;
}
if(dem!=3) return 0;
//co hon mot ki tu==============================
if(inputString[0]==46||inputString[n-1]==46) return 0; //ki tu dau va cuoi khac dau cham
for(int i=1;i<inputString.length()-1;i++)
{
if(inputString[i]==46 && inputString[i+1] == 46) return 0;
}
//khong co chu cai=========================================
for(int i=0 ; i<n ; i++)
{
if (inputString[i]==47||inputString[i]<46||inputString[i]>57) return 0;
}
//2 so o giua nho hon 255===========================================
int sokitu;
for(int i=0; i<n-1 ; i++)
{
if(inputString[i]==46)
{
for(int j=i+1 ; j < n ; j++)
{
if(inputString[j]==46)
{
sokitu = j-i-1;
if(sokitu==3&&kiemtraso(inputString,i+1)==0) return 0;
if(sokitu>3) return 0;
break;
}
}
i++;
continue;
}
}
//so dau nho hon 255 =====================================
int kitudau;
int m=0;
for(int i=0;i<n;i++)
{
if(inputString[i]==46)
{
if (i==3 && kiemtraso(inputString,m)==0) return 0;
if (i>3) return 0;
break;
}
}
//so cuoi nho hon 255=======================================
for(int i=inputString.length()-1;i>0;i--)
{
if(inputString[i]==46)
{
if(inputString.length()-i-1==3 && kiemtraso(inputString,i+1)==0) return 0;
if (inputString.length()-i-1 > 3) return 0;
break;
}
}
return 1;
}
Проверяет, является ли введенная строка IP адресом.
Не мое
решение одного, судя по всему, вьетнамца.
Я пока не очень силен в алгоритмах, может это типа нормально, подскажите.
noserdan,
02 Апреля 2018
-
+1
- 1
- 2
- 3
- 4
local buff = ""
for line in io.lines() do
buff = buff .. line .. "\n"
end
Несмотря на его безобидный вид, этот код может сильно ударить по быстродействию для больших файлов:
например, чтение файла размером 1 Мб занимает 1,5 минуты
3oJIoTou_xyu,
29 Марта 2018
-
+1
- 1
y = deepcopy(np.array(np.matrix(self.data['mg']).flatten().tolist()[0]))
Преобразование колонки Pandas DataFrame в NumPy Array. Люблю машинное обучение.
mizabrik,
28 Марта 2018
-
+1
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
bool almostIncreasingSequence(std::vector<int> sq) {
bool b2 = true;
int s = sq.size();
if (s > 2) { // Последовательность меньше трех чисел дает истину.
int i = 1; // Проверка начинается со второго элемента.
int x = -1; // Для записи индекса элемента <= предыдущего, а еще "флаг".
while ((b2) && (i < s)) { // При нахождении 2-го лишнего происходит выход из цикла.
if (x != -1) { // Проверка "флага".
if (sq[i] <= sq[i - 1]){ // Сравнение с предыдущим элементом.
b2 = false; // Если условие истинно, то это уже второй элемент,
} // "конфликтующий" с предыдущим, следовательно, выход и "ложь".
if ((sq[i] <= sq[x - 1]) && (x != 1) && (sq[i - 1] <= sq[x - 2])) { // над этим условием я думал слишком долго
b2 = false; // Если элемент был "убран", индекс конфликтного
} // элемента записан в "x".
}
else { // Если условие ложно, то записываем индекс элемента, который
if (sq[i] <= sq[i - 1]) { // "конфликтует" с предыдущим.
x = i; // Нам не известно лишний он или нет.
}
}
i++;
}
}
return b2;
}
проверяет, можно ли убрать только один элемент из последовательности, чтобы она стала постоянно возрастающей.
noserdan,
28 Марта 2018