您的位置:首页 > 编程语言 > Java开发

第五届蓝桥杯 省赛 JavaB组 猜字母

2017-03-12 09:56 148 查看
 把abcd...s共19个字母组成的序列重复拼接106次,得到长度为2014的串。

接下来删除第1个字母(即开头的字母a),以及第3个,第5个等所有奇数位置的字母。

得到的新串再进行删除奇数位置字母的动作。如此下去,最后只剩下一个字母,请写出该字母。

答案是一个小写字母,请通过浏览器提交答案。不要填写任何多余的内容。

答案:q

public class Main {
public static void main(String[]argsStrings ){
String str="abcdefghijklmnopqrs";
String s="";
for(int i=1;i<=106;i++){//循环106次,得到长度为1024的字符串
s=s+str;
}
char a[]=s.toCharArray();//字符串转化为字符型数组存储
int len=a.length;
while(len!=1){//循环删除奇数位字符
for(int u=0,i=0;u<len;u++){
if(u%2!=0){//奇数位
a[i]=a[u];
i++;
}else{
len--;
}
}
}
System.out.println(a[0]);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java 算法 蓝桥杯