问题描述
标题; 猜字母
把abcd...s共19个字母组成的序列重复拼接106次,得到长度为2014的串。
接下来删除第1个字母(即开头的字母a),以及第3个,第5个等所有奇数位置的字母。
得到的新串再进行删除奇数位置字母的动作。如此下去,最后只剩下一个字母,请写出该字母。
答案是一个小写字母,请通过控制台输出答案。不要填写任何多余的内容。

代码:

public class Fore {
	public static void main(String[] args) {
		int a[] = new int[10];
		f(0,a);
	}
	private static void f(int i, int[] a) {
		if(i<10){
			a[i] = 1;
			f(i+1,a);
			a[i] = 0;
			f(i+1,a);
		}else{
			int sum = 10;
			for (int j = 0; j < a.length; j++) {
				if(a[j]==0){
					sum = sum-j-1;
				}else{
					sum*=2;
				}
			}
			if(sum==100){
				for (int j = 0; j < a.length; j++) {
					System.out.print(a[j]);
				}
				System.out.println();
			}
		}
	}
}
原文:http://www.cnblogs.com/-rainbow-/p/7749586.html