|
lastwinner 发表于 2012-12-4 13:53 ![]()
你这个思路还有可以改进的地方采用上述区域后,实际上如果我做这个题,我会在上述区域内考察如下情况:[/ ...
with q as (select rownum-1 r from dual connect by level <3),
p as (select a.r u,b.r v,c.r w,d.r x,e.r y from q a,q b,q c,q d,q e),
t as (select a.u a,a.v b,a.w c,a.x d,a.y e,
b.u f,b.v g,b.w h,b.x i,b.y j,
c.u k,c.v l,c.w m,c.x n,c.y o,
d.u p,d.v q,d.w r,d.x s,d.y t,
e.u u,e.v v,e.w w,e.x x,e.y y
from p a,p b,p c,p d,p e)
select count(1)
from t
where a+b+c+d+e+f+g+h+i+k+l+m+p+q+u=5
and a+b+c+d+e>0
and a+f+k+p+u>0
and v=0
and r=0
and n=0
and j=0
and w=0
and s=0
and o=0
and x=0
and t=0
and y=0;
and ( (a=1 and b=1 and c=1 and d=1 and e=1) --横着5个为1
or (a=1 and b=1 and c=1 and d=1 and (f=1 or g=1 or h=1 or i=1) --横着4个为1
or ( (k=1 and l=1 and m=1)
or (f=1 and g=1 and h=1 ........--这样写有点多
)
) |
|