【蓝桥杯】奇怪的数列

蓝桥杯——奇怪的数列 简单思维题 阅读详情

标题:奇怪的数列

从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,否则按无效代码处理。
这是代码1:


import java.util.Scanner;

public class Demo {

    private static int k, p;
    private static char[] s1 = new char[10000];
    private static int[] s2 = new int[10000];

    public static void main(String[] args) {
        // TODO 自动生成的方法存根
        Scanner sc = new Scanner(System.in);
        String n = sc.nextLine();
        int m = sc.nextInt();
        char[] ch = n.toCharArray();
        for (int i = 0; i < ch.length; i++) {
            s1[i] = ch[i];
        }
        p = ch.length;
        while (m > 0) {
            k = 0;
            for (int i = 0; i < p;) {
                int t = s1[i] - '0';
                strNode m1 = duang(i);
                i = m1.p;
                s2[k++] = m1.sum;
                s2[k++] = t;
            }
            p = k;
            for (int j = 0; j < k; j++) {
                s1[j] = (char) (s2[j] + '0');
            }
            m--;
        }
        for (int i = 0; i < k; i++) {
            System.out.print(s2[i]);
        }

    }

    public static strNode duang(int start) {
        strNode mode = new strNode();
        int sum = 1;
        int i;
        for (i = start; s1[i] == s1[i + 1]; i++) {
            sum++;
        }
        mode.sum = sum;
        mode.p = i + 1;
        return mode;
    }

}

class strNode {
    int sum;
    int p;
}

代码2:

import java.util.Scanner;

public class Main {
    static String ts = "";

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Scanner sc = new Scanner(System.in);
        String str = sc.nextLine();
        int n = sc.nextInt();
        fn(str, n);
        System.out.println(ts);
    }

    private static void fn(String str, int n) {
        // TODO Auto-generated method stub
        if (n <=0) {
            ts = str;
            return;
        }
        int lnum = 1;
        String ss = "";
        char cl;
        char[] cs = str.toCharArray();
        for (int i = 0; i < cs.length; i++) {
            cl = cs[i];
            if (i + 1 != cs.length) {
                if (cl == cs[i + 1]) {
                    lnum++;
                } else {
                    ss = ss +lnum + cl;//接下来三行顺序不能乱
                    cl = cs[i];
                    lnum = 1;
                }
            } else {
                ss = ss + lnum + cl;
            }
        }

        fn(ss, --n);
    }
}
别再乱改grub.cfg了!手把手教你用GRUB2自定义多系统启动菜单(含UEFI/BIOS双模式配置) 本文详细介绍了如何安全、高效地使用GRUB2自定义多系统启动菜单,涵盖UEFI/BIOS双模式配置。通过避免直接编辑grub.cfg文件,采用正确的配置方法和命令,帮助用户打造稳定且美观的启动环境,特别适合Linux多系统用户和开发者。 阅读详情

相关推荐

Cadence AMS数模混合仿真:从零搭建高效验证环境的实战指南

本文是Cadence AMS数模混合仿真的实战指南,详细介绍了如何从零搭建高效的芯片验证环境。内容涵盖环境准备、Testbench创建、核心Config视图与ADE设置、仿真运行调试及性能加速技巧,旨在帮助工程师解决SoC设计中数字与模拟模块的集成验证难题,确保芯片设计一次成功。

weixin_29164091的博客 324

【蓝桥杯】奇怪的数

【代码】【蓝桥杯】奇怪的数。

include_YF_h_的博客 1955

基于SOEM的伺服电机控制实战:从配置到调试

本文详细介绍了基于SOEM的伺服电机控制实战,从硬件配置到软件调试的全过程。通过分享PDO映射、状态机控制、性能优化等核心技巧,帮助开发者快速掌握EtherCAT通信与伺服电机控制的关键技术,提升工控系统开发效率。

weixin_29165465的博客 522

蓝桥杯例题

一、问题描述:从x星截获一份电码,是一些数字,如下: 13 1113 3113 132113 1113122113 … YY博士经彻夜研究,发现了规律: 第一行的数字随便是什么,以后每一行都是对上一行“读出来”比如第2行,是对第1行的描述,意思是:1个1,1个3,所以是:1113 第3行,意思是:3个1,1个3,所以是:3113 请你编写一个程序,可以从初始数字开始,连续进行这样的变换。 数据格式...

九思的博客 1287

在Visual Studio中搭建Dynamo Python开发环境,效率飞一般的增长

在Visual Studio中搭建Dynamo Python开发环境,效率飞一般的增长

BIM的乐趣 1731

从专利库到Zemax:一个6mm定焦镜头从零到交付的完整设计流程(含CodeV转换技巧)

本文详细介绍了6mm定焦镜头从专利库检索到最终交付的全流程设计,重点解析了CodeV与Zemax工具链的无缝衔接技巧。通过实际案例展示规格定义、专利筛选、结构适配、非球面优化等关键步骤,帮助光学设计工程师提升设计效率和制造良率。特别包含CodeV转换Zemax的实用技巧,适用于机器视觉和安防镜头开发。

weixin_42561040的博客 165

【蓝桥杯每日一练】特殊的数字

一、题目描述 153是一个非常特殊的数,它等于它的每位数字的立方和,即153=13+ 53 + 33。编程求所有满足这种条件的三位十进制数。 输出 按从小到大的顺序输出满足条件的三位十进制数,每个数占一行。 二、个人解析 这道题十分地简单,首先看题目是三位数,那么使用for语句从100开始直到1000进行自增循环;再将个位、十位、百位使用求余数的方式进行拆开,然后使用函数pow()求每一位的立方之和;之后使用if语句进行判断所求得每个位数上的立方和是否与原来的数相等;如果相等,则输出该数。

泥菩萨会发光的小窝 1158

蓝桥杯:奇怪的数列

关键是嵌套循环的表示,注意to_string(count)的使用。

2302_79279009的博客 534

在 NVIDIA Orin (JetPack 6.0) 上配置 PyTorch 2.4 + Torchvision 0.19 的完整避坑指南

本文提供在NVIDIA Jetson Orin设备上,基于JetPack 6.0系统配置PyTorch 2.4与Torchvision 0.19环境的完整指南。通过使用Miniconda环境隔离、安装特定版本PyTorch夜间构建版、编译匹配的Torchvision源码等步骤,解决版本不匹配、CUDA支持等常见问题,确保AI开发环境稳定可用。

weixin_29179311的博客 366

四足机器人——机械结构

目录 一、四足机器人腿型: 1、并联腿 2、串联腿 3、 腿的布局(关节配置) 二、四足机器人足端设计: 三、四足机器人膝关节驱动: 1、皮带轮驱动: 2、四连杆或者推杆驱动 四、四足机器人机械整体结构设计细节 一、四足机器人腿型: 1、并联腿 优点:受力角度来说,并联腿比串联腿好,并联腿较为灵活。 2、串联腿 优点:运动范围大 3、 腿的布局(关节配置) 为了使机器人具有较好的稳定性,一般会采用比较低的重心。这就导致了机器人腿的髋关节位置需要位于机器人身体的两侧..

m0_58585940的博客 3万+

蓝桥杯 14. 奇怪的数列

你的任务是:从初始数字开始,连续进行这样的变换。输出一个字符串,表示最后一次变换完的结果。

wuqingshun314159的博客 624

SPI协议详解(图文并茂+超详细)

先说串口 因为之前写过一篇UART,通用串行异步通讯协议,UART的相关资料 因为UART没有时钟信号,无法控制何时发送数据,也无法保证双发按照完全相同的速度接收数据。因此,双方以不同的速度进行数据接收和发送,就会出现问题。 如果要解决这个问题,UART为每个字节添加额外的起始位和停止位,以帮助接收器在数据到达时进行同步; 双方还必须事先就传输速度达成共识(设置相同的波特率,例如每秒9600位)。 传输速率如果有微小差异不是问题,因为接收器会在每个字节的开头重新同步。相应的协议如下图所示; 如果您注意到

一名热爱技术的工程师的博客。分享技术干货,记录美好生活。永远相信美好的事情即将发生。 33万+

蓝桥杯之奇怪的数列

题目: 从X星截获一份电码,是一些数字,如下: 13 1113 3113 132113 1113122113 ….YY博士经彻夜研究,发现了规律: 第一行的数字随便是什么,以后每一行都是对上一行“读出来” 比如第2行,是对第1行的描述,意思是:1个1,1个3,所以是:1113 第3行,意思是:3个1,1个3,所以是:3113请你编写一个程序,可以从初始数字开始,连续进行这样的变换

sword_anyone的博客 1987

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

蓝桥杯:奇怪的数列

本题考查的是字符串拼接,也就是主要考察的是StringBuffer的append()方法,我们可以先读第一个元素作为当前元素,之后开始往后数,记录数量,开始往答案上拼接,格式为count+currentChar但是我们可能最后会少一个拼接节点,于是我们最后将统计的最后一个元素的数量加当前元素进行拼接。比如第 2 行,是对第 1 行的描述,意思是:1 个 1,1 个 3,所以是:1113。第 3 行,意思是:3 个 1,1 个 3,所以是:3113。请你编写一个程序,可以从初始数字开始,连续进行这样的变换。

lzy1573423的博客 640

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

问题 1833: [蓝桥杯][2015年第六届真题]奇怪的数列

问题 1833: [蓝桥杯][2015年第六届真题]奇怪的数列 时间限制: 1Sec 内存限制: 128MB 提交: 146 解决: 88 题目描述 从X星截获一份电码,是一些数字,如下: 13 1113 3113 132113 1113122113 .... YY博士经彻夜研究,发现了规律: 第一行的数字随便是什么,以后每一行都是对上一行“读出来” 比如第2行,是对第1行的描述,意思是:1...

~ 1008

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

蓝桥杯--历届真题 奇怪的数列【第六届】【决赛】【C组】

资源限制 内存限制:256.0MB C/C++时间限制:1.0s Java时间限制:3.0s Python时间限制:5.0s   从X星截获一份电码,是一些数字,如下:   13   1113   3113   132113   1113122113   ....   YY博士经彻夜研究,发现了规律:   第一行的数字随便是什么,以后每一行都是对上一行“读出来”   比如第2行,是对第1行的描述,意思是:1个1,1个3,所以是:1113   第3行,意思是:3个1,1个3,所以是:3113 ...

with_wine的博客 2118

奇怪的数列 | 第六届蓝桥杯国赛JavaC组

Y 博士经彻夜研究,发现了规律:第一行的数字随便是什么,以后每一行都是对上一行“读出来”。比如第 2 行,是对第 1 行的描述,意思是:1 个 1,1 个 3,所以是:1113。第 3行,意思是:3 个 1,1 个 3,所以是:3113。请你编写一个程序,可以从初始数字开始,连续进行这样的变换。

2301_78848414的博客 281

蓝桥杯---奇怪的数列

/str.substring(i,i+1)==获取字符串的第一个字符,并且可以循环依次往下获取。比如第2行,是对第1行的描述,意思是:1个1,1个3,所以是:1113。(1) 如何获取字符串的第一个字符,并且可以循环依次往下获取。请你编写一个程序,可以从初始数字开始,连续进行这样的变换。第二行,一个数字n,表示需要你连续变换多少次,n不超过20。第二种:直接取出字符串,拿出第一个字符,依次比较。第3行,意思是:3个1,1个3,所以是:3113。注:(1)一个空字符串可以直接写进东西;

wangzhemvp的博客 1138

java实现第六届蓝桥杯奇怪的数列

奇怪的数列 从X星截获一份电码,是一些数字,如下: 13 1113 3113 132113 1113122113 … ...

Marcus 3579

蓝桥杯题目练习 提升篇 [蓝桥杯2015决赛]奇怪的数列

奇怪的数列 题目描述 从X星截获一份电码,是一些数字,如下: 13 1113 3113 132113 1113122113 … YY博士经彻夜研究,发现了规律: 第一行的数字随便是什么,以后每一行都是对上一行“读出来” 比如第2行,是对第1行的描述,意思是:1个1,1个3,所以是:1113 第3行,意思是:3个1,1个3,所以是:3113 请你编写一个程序,可以从初始数字开始,连续进行这样的变换。...

Ace_bb的博客 682

[蓝桥杯][2015第六届真题]奇怪的数列 —— char数组求解

题目:奇怪的数列——原题链接 步骤步骤解析 参考代码: 虽然这个代码可以ac但是如果输入相同数字超过10之后,会出现bug; #include<stdio.h> #include<string.h> char a[1000]; char b[105]; int n; int main(){ scanf("%s",&a); getchar(); scanf("%d",&n); while(n--){ int len=str

m0_46549788的博客 351

蓝桥杯历届-奇怪的数列

蓝桥杯历届-奇怪的数列还不复习算法,估计国赛会跪。。。 标题:奇怪的数列从X星截获一份电码,是一些数字,如下: 13 1113 3113 132113 1113122113 ....YY博士经彻夜研究,发现了规律: 第一行的数字随便是什么,以后每一行都是对上一行“读出来” 比如第2行,是对第1行的描述,意思是:1个1,1个3,所以是:1113 第3行,意思是:3个1,1个3,所以是:3113请你编写

Kid_TH的博客 3738

[蓝桥杯][2015年第六届真题]奇怪的数列

题目链接:奇怪的数列 解题思路:模拟,枚举每一个得到的字符串,遍历这个字符串,统计连续相同的字符添加进空串中。 #include<bits/stdc++.h> #define x first #define y second #define mem(h) memset(h,-1,sizeof h) #define mcp(a,b) memcpy(a,b,sizeof b) using namespace std; typedef long long LL; typedef unsigned

一名蒟蒻的博客 592
上一篇: 【蓝桥杯】回文数字
下一篇: 【蓝桥杯】 骰子迷题
Tenyearsme
博客等级 码龄11年 32粉丝 96原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值