蓝桥杯2014年第十三届省赛真题-猜字母

一、题目

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

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

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

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

二、分析

 我们先获得这个长度为106的串,将串转化为字符数组,然后如果遇到偶数,则不断地将偶数位置的字母放在数组的最前面,如果是奇数位置的字母则(以数组的减一的形式)删去,当一轮删完之后,我们要重新重复刚才的步骤,直到数组的长度刚好为1.

代码:

package lan2014;

public class C猜字母 {

	public static void main(String[] args) {
		String s = "abcdefghijklmnopqrs";
		String s1 = "";
		for(int i = 0; i < 106; i++) {
			s1 += s;
		}
		
		char[] arr = s1.toCharArray();
		
		int l = arr.length;
		while(l != 1) {
			int k = 0;
			for(int i = 0; i < l; i++) {
				if(i % 2 != 0) {
					arr[k++] = arr[i];
				} else {
					l--;
				}
			}
		}
		System.out.println(arr[0]);
	}
}

运行结果:q 

一定要注意,k的位置,k在一轮判断完之后,要重新置为0.

相关推荐

  1. 2014-字母

    2024-04-01 05:30:09       41 阅读
  2. 2014-武功秘籍

    2024-04-01 05:30:09       41 阅读
  3. 2014-切面条

    2024-04-01 05:30:09       37 阅读
  4. 2018-复数幂

    2024-04-01 05:30:09       45 阅读
  5. 2019-数列求值

    2024-04-01 05:30:09       46 阅读
  6. 2016-立方变自身

    2024-04-01 05:30:09       46 阅读
  7. 2016-承压计算

    2024-04-01 05:30:09       40 阅读
  8. 2020-合并检查

    2024-04-01 05:30:09       40 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-01 05:30:09       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-01 05:30:09       101 阅读
  3. 在Django里面运行非项目文件

    2024-04-01 05:30:09       82 阅读
  4. Python语言-面向对象

    2024-04-01 05:30:09       91 阅读

热门阅读

  1. 【WPF应用27】C#中的Slider控件详解与应用示例

    2024-04-01 05:30:09       46 阅读
  2. 浅谈深度学习的学习方法

    2024-04-01 05:30:09       36 阅读
  3. 2024最新华为OD机试试题库全 -【数的分解】- C卷

    2024-04-01 05:30:09       41 阅读
  4. 算法打卡day22

    2024-04-01 05:30:09       38 阅读
  5. qtcreator msvc编译器 链接外部库的方式

    2024-04-01 05:30:09       41 阅读
  6. MATLAB实现在LSB低三位嵌入图像

    2024-04-01 05:30:09       37 阅读
  7. 小程序归类及适合企业运用

    2024-04-01 05:30:09       38 阅读