告诉你什么是优雅的代码(10)----鬼斧神工

阅读更多
最近逛javaeye得出的体会就是现在的弟弟妹妹确实都很强。动不动都是看过大型框架源码,搞虚拟机,研究字节码。言必海量数据海量用户,高并发等话题。而我一头老鸟还在写些比肩hello world的小代码,真是深感汗颜。所以写完这篇这个系列就结束了。

正如这个系列的其他帖子一样,这篇东西也没有什么你可以获得快感的元素。看见标题的鬼斧神工了吗?不要误会,不是在形容我接下来要写的代码。上面已经说了,现在的弟弟妹妹很强。未来是你们的,也是我们的,但终究是你们的。所以当我浏览这个帖子http://www.iteye.com/topic/800013,看见那段惊为天人的代码时,我便对上面的话深信不疑。

闲话休提,来看下这段鬼斧神工的代码:

public static void main(String[] args)
{
for(int i = 1; i < 10;i++) //1
{
if(i%1!=0)
{
continue;
}else
{
for(int j = 1; j < 10; j++)//2
{
if(i==j)
{
continue;
}else
{
if((i*10 + j)%2 == 0)
{
for(int k = 1; k < 10 ; k++)//3
{
if((k==i)||(k==j))
{
continue;
}else
{
if((i*100 + j*10 + k)%3==0)
{
for(int l = 1 ;l <10;l++)//4
{
if((l==i)||(l==j)||(l==k))
{
continue;
}else
{
if((i*1000+j*100+k*10+l)%4==0)
{
for(int m = 1;m <10;m++)//5
{
if((m==i)||(m==j)||(m==k)||(m==l))
{
continue;
}else
{
if((i*10000+j*1000+k*100+l*10+m)%5==0)
{
for(int n=1;n<10;n++)//6
{
if((n==i)||(n==j)||(n==k)||(n==l)||(n==m))
{
continue;
}else
{
if((i*100000+j*10000+k*1000+l*100+m*10+n)%6==0)
{
for(int x = 1;x < 10; x++)//7
{
if((x==i)||(x==j)||(x==k)||(x==l)||(x==m)||(x==n))
{
continue;
}else
{
if((i*1000000+j*100000+k*10000+l*1000+m*100+10*n+x)%7==0)
{
for(int y =0; y < 10;y++)//8
{
if((y==i)||(y==j)||(y==k)||(y==l)||(y==m)||(y==n)||(y==x))
{
continue;
}else
{
if((i*10000000+j*1000000+k*100000+l*10000+m*1000+n*100+10*x+y)%8==0)
{
for(int z = 1; z < 10; z++)
{
if((z==i)||(z==j)||(z==k)||(z==l)||(z==m)||(z==n)||(z==x)||(z==y))
{
continue;
}else
{
if((i*100000000+j*10000000+k*1000000+l*100000+m*10000+n*1000+x*100+10*y+z)%9==0)
{
System.out.println(i+""+j+""+k+""+l+""+m+""+n+""+x+""+y+""+z);
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}






高效与精彩不用多表。


在此也贴上我一直所标榜为优雅的史上被隐藏最多的代码,以结束这个系列。


import java.util.Arrays;

public class MagicDiv {
	private int[] used = new int[10];
	public void find(){
		Arrays.fill(used,0);
		used[5] = 1;
		dfs(0,1);
	}	
	public void dfs(int pre, int pos){
		if(pos > 9){
			System.out.println(pre);
			return;
		}
		int tmp = pre * 10;
		if(pos == 5){	
			dfs(tmp + 5 , pos + 1);
		}else{
			
		for (int i = 1; i < 10; i++) {
			if(used[i] == 0	){
				int cur = tmp + i;
				if(cur % pos == 0){
					used[i] = 1;
					dfs(cur,pos + 1);
					used[i] = 0;
				}
			}
		
		}
		
		}
	}
	public static void main(String[] args) {
		new MagicDiv().find();
	}

}


你可能感兴趣的:(算法,J#,虚拟机,Google,框架)