第五届蓝桥杯B组java—猜字母

来源:互联网 发布:ubuntu u盘启动工具 编辑:程序博客网 时间:2024/06/05 14:37
/*
标题:猜字母
    把abcd...s共19个字母组成的序列重复拼接106次,得到长度为2014的串。
    接下来删除第1个字母(即开头的字母a),以及第3个,第5个等所有奇数位置的字母。
    得到的新串再进行删除奇数位置字母的动作。如此下去,最后只剩下一个字母,请写出该字母。
答案是一个小写字母,请通过浏览器提交答案。不要填写任何多余的内容。*/


public class Guess_Letters 
{
public static void main(String[] args) 
{
// 获取数组
char letters[] = new char[19];
for(int i=0; i<letters.length; i++)
{
letters[i] = (char) ('a'+i);
}                                           

char letters1[] = new char[2014];
for(int i=0; i<letters1.length; i++)
{
int y = i%19;
letters1[i] = letters[y];

}
fun(letters1);
}

public static void fun(char letter[])
{
if(letter.length==1)
{
System.out.println(letter[0]);
return;
}

char new_letter[] = null;
if(letter.length%2==0)
{
new_letter = new char[letter.length/2];
}else{
new_letter = new char[(letter.length-1)/2];
}

int j=0;

for(int i=0; i<letter.length; i++)
{
if(i%2!=0)
{
new_letter[j] = letter[i];
j++;
}
}
fun(new_letter);
return;
}
}
0 0