zoukankan      html  css  js  c++  java
  • java实现第六届蓝桥杯奇怪的数列

    奇怪的数列

    从X星截获一份电码,是一些数字,如下:
    13
    1113
    3113
    132113
    1113122113

    YY博士经彻夜研究,发现了规律:
    第一行的数字随便是什么,以后每一行都是对上一行“读出来”
    比如第2行,是对第1行的描述,意思是:1个1,1个3,所以是:1113
    第3行,意思是:3个1,1个3,所以是:3113

    请你编写一个程序,可以从初始数字开始,连续进行这样的变换。

    数据格式:

    第一行输入一个数字组成的串,不超过100位
    第二行,一个数字n,表示需要你连续变换多少次,n不超过20

    输出一个串,表示最后一次变换完的结果。

    例如:
    用户输出:
    5
    7

    则程序应该输出:
    13211321322115

    资源约定:
    峰值内存消耗(含虚拟机) < 512M
    CPU消耗 < 1000ms

    请严格按要求输出,不要画蛇添足地打印类似:“请您输入…” 的多余内容。

    所有代码放在同一个源文件中,调试通过后,拷贝提交该源码。
    注意:不要使用package语句。不要使用jdk1.7及以上版本的特性。
    注意:主类的名字必须是:Main,否则按无效代码处理。

    
    import java.util.Scanner;
    
    public class Qiguaideshulie {
        public static void getResult(String A, int n) {
            while(n > 0) {
                n--;
                StringBuffer result = new StringBuffer("");
                for(int i = 0;i < A.length();i++) {
                    int count = 1;
                    int j = i + 1;
                    for(;j < A.length();j++) {
                        if(A.charAt(i) == A.charAt(j))
                            count++;
                        else
                            break;
                    }
                    result.append(count);
                    result.append(A.charAt(i));
                    i = j - 1;
                }
                A = result.toString();
            }
            System.out.println(A);
        }
    
        public static void main(String[] args) {
    
            Scanner in = new Scanner(System.in);
            String A = in.next();
            int n = in.nextInt();
             getResult(A, n);
        }
    }
    
    
  • 相关阅读:
    1015词法分析
    0909作业
    华为云专家来公司
    SVN与Git的优点差异比较
    eclipse快捷键大全
    Servlet,HttpServletRequest 和 HttpServletResponse
    XML
    JDBC
    XMIND快捷键
    java数据
  • 原文地址:https://www.cnblogs.com/a1439775520/p/13077214.html
Copyright © 2011-2022 走看看