欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

猜字母

程序员文章站 2022-07-11 09:30:09
一个渣渣的再次分享: 标题:猜字母 把abcd...s共19个字母组成的序列重复拼接106次,得到长度为2014的串。 接下来删除第1个字母(即开头的字母a),以及第3个,第5个等所有奇数位置的字母。 得到的新串再进行删除奇数位置字母的动作。如此下去,最后只剩下一个字母,请写出该字母。 答案是一个小 ......

一个渣渣的再次分享:

标题:猜字母

把abcd...s共19个字母组成的序列重复拼接106次,得到长度为2014的串。

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

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

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

import java.util.arraylist;

public class 猜字母 {
    public static void main(string[] args) {
         stringbuffer sb = new stringbuffer();//比string多了一些好用的 方法
         for(int i=0;i<106;i++) {//先造题目,生成拼接的106次
             sb.append("abcdefghijklmnopqrs");//虽然是拼接的但是,每一个字母都有属于字的下标
         }
         //system.out.println(sb.deletecharat(0));
         while(sb.length()>1) {//就剩一个停止
             for(int i=0;i<sb.length();i++) {//每次删除一个sb长度就会减少一个,然后i++,其实删除的恰好就是奇数
                 sb.deletecharat(i);//删除第i个元素
             }
         }
         system.out.println(sb);
    }
}

一渣一总结:

  1、利用stringbuilder特性造题目

  2、每次删除一个正好减的奇数的有趣现象(因为i++)