- 1
Я анально воспитываю "kegdan`a".
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+139
Я анально воспитываю "kegdan`a".
+76
public static boolean isNodePresent(String nodeName, String tree, boolean waitForNotNullCondition) {
return (waitForNotNullCondition) ? getTreeItemId(tree, nodeName) != null : getTreeItemId(tree, nodeName) == null;
}
+11
#define EDGE_EDGE_TEST(V0,U0,U1) \
Bx=U0[i0]-U1[i0]; \
By=U0[i1]-U1[i1]; \
Cx=V0[i0]-U0[i0]; \
Cy=V0[i1]-U0[i1]; \
f=Ay*Bx-Ax*By; \
d=By*Cx-Bx*Cy; \
if((f>0 && d>=0 && d<=f) || (f<0 && d<=0 && d>=f)) \
{ \
e=Ax*Cy-Ay*Cx; \
if(f>0) \
{ \
if(e>=0 && e<=f) return 1; \
} \
else \
{ \
if(e<=0 && e>=f) return 1; \
} \
}
#define POINT_IN_TRI(V0,U0,U1,U2) \
{ \
double a,b,c,d0,d1,d2; \
/* is T1 completly inside T2? */ \
/* check if V0 is inside tri(U0,U1,U2) */ \
a=U1[i1]-U0[i1]; \
b=-(U1[i0]-U0[i0]); \
c=-a*U0[i0]-b*U0[i1]; \
d0=a*V0[i0]+b*V0[i1]+c; \
\
a=U2[i1]-U1[i1]; \
b=-(U2[i0]-U1[i0]); \
c=-a*U1[i0]-b*U1[i1]; \
d1=a*V0[i0]+b*V0[i1]+c; \
\
a=U0[i1]-U2[i1]; \
b=-(U0[i0]-U2[i0]); \
c=-a*U2[i0]-b*U2[i1]; \
d2=a*V0[i0]+b*V0[i1]+c; \
if(d0*d1>0.0) \
{ \
if(d0*d2>0.0) return 1; \
} \
}
#define NEWCOMPUTE_INTERVALS(VV0,VV1,VV2,D0,D1,D2,D0D1,D0D2,A,B,C,X0,X1) \
{ \
if(D0D1>0.0f) \
{ \
/* here we know that D0D2<=0.0 */ \
/* that is D0, D1 are on the same side, D2 on the other or on the plane */ \
A=VV2; B=(VV0-VV2)*D2; C=(VV1-VV2)*D2; X0=D2-D0; X1=D2-D1; \
} \
else if(D0D2>0.0f)\
{ \
/* here we know that d0d1<=0.0 */ \
A=VV1; B=(VV0-VV1)*D1; C=(VV2-VV1)*D1; X0=D1-D0; X1=D1-D2; \
} \
else if(D1*D2>0.0f || D0!=0.0f) \
{ \
/* here we know that d0d1<=0.0 or that D0!=0.0 */ \
A=VV0; B=(VV1-VV0)*D0; C=(VV2-VV0)*D0; X0=D0-D1; X1=D0-D2; \
} \
else if(D1!=0.0f) \
{ \
A=VV1; B=(VV0-VV1)*D1; C=(VV2-VV1)*D1; X0=D1-D0; X1=D1-D2; \
} \
else if(D2!=0.0f) \
{ \
A=VV2; B=(VV0-VV2)*D2; C=(VV1-VV2)*D2; X0=D2-D0; X1=D2-D1; \
} \
else \
{ \
/* triangles are coplanar */ \
return coplanar_tri_tri(N1,V0,V1,V2,U0,U1,U2); \
} \
}
Макросы макросики. Inline? Нет, не слышал.
−83
setRegState :: RegisterStates -> M_Register -> Word8 -> RegisterStates
setRegState rs r n =
let (a, b, c, d, e, f, h, l, pc, sp) = rs in
case r of
M_A -> (n, b, c, d, e, f, h, l, pc, sp)
M_B -> (a, n, c, d, e, f, h, l, pc, sp)
M_C -> (a, b, n, d, e, f, h, l, pc, sp)
M_D -> (a, b, c, n, e, f, h, l, pc, sp)
M_E -> (a, b, c, d, n, f, h, l, pc, sp)
M_F -> (a, b, c, d, e, n.&.0xF0, h, l, pc, sp)
M_H -> (a, b, c, d, e, f, n, l, pc, sp)
M_L -> (a, b, c, d, e, f, h, n, pc, sp)
Haskell has no boilerplate.
Из исходников заброшенного эмулятора GameBoy (https://github.com/bitc/omegagb/)
+126
Пони тред!
Поняшки!
+16
const TReferenceToConstantStringSlice TFileTransfer::Beginer="<HTML><HEAD><FONT SIZE=6><A HREF='/'>Конфиденциально</A></FONT SIZE></HEAD><BODY><BR>";
const TReferenceToConstantStringSlice TFileTransfer::Ender="</BODY></HTML>";
Конфиденциально - это я сейчас стер.
+115
#define TEN 10
#define TEEN 100
#define TEEEN 1000
+156
foreach ($item as $prop) {
if ($prop['tag']==$this->props[0]){
$new_item['sku']=(int)$prop['value'];
} else {
if ($prop['tag'] == $this->props[1]) {
$new_item['name']=$prop['value'];
} else {
if ($prop['tag'] == $this->props[2]) {
$new_item['price']=(float)$prop['value'];
} else {
if ($prop['tag'] == $this->props[3]) {
$new_item['is_spec']=(float)$prop['value'];
} else {
if ($prop['tag'] == $this->props[4]) {
$new_item['spec_price']=(float)$prop['value'];
} else {
if ($prop['tag'] == $this->props[5]) {
$new_item['old']=(float)$prop['value'];
}
}
}
}
}
}
}
XML бессмысленный и беспощадный
+151
class A {
public function getUser() {
.....
}
public function init() {
......
}
}
class B extends A {
........
// close some parent methods from outside
public function getUser () {}
public function init () {}
}
труЪ ООП: Инкапсуляция посредством полиморфизма!
+107
public class Visit
{
public DateTime Start {get; set;}
public DateTime Finish {get; set;}
}
public bool IsConflict(Visit a, Visit b)
{
var s = GetArray(a);
var s2 = GetArray(b);
return Compare(s,s2);
}
private List<string> GetArray(Visit visit)
{
var list = new List<string>();
while (visit.Start < visit.Finish)
{
list.Add(visit.Finish.ToString()); // в строках!
visit.Finish -= TimeSpan.FromMinutes(1); // по 1й минуте!!!
}
return list;
}
private bool Compare(List<string> list1, List<string> list2)
{
foreach (var s in list1)
{
if (list2.Any(x => x == s))
{
return false;
}
}
return true;
}
Основная здесь функция, предназначенная для вызова, - IsConflict(Visit a, Visit b)
Она должна проверять, пересекаются ли меджу собой два промежутка времени.
Вот такая проверка со сложностью O(n*n) , где n - кол-во минут в промежутках времени.