数字接龙

博客内容介绍了数字接龙的玩法,即给定一定数量的数字,如果一个数字的末尾与另一个数字的首部相同,则可以相连,目标是找到最长的连续序列。文章提供了一个Java程序`ConnectNum2`作为解决方案,处理了不同长度和数值范围的数字串,并给出了多个示例输入和对应输出,展示了解决问题的完整过程。
摘要由CSDN通过智能技术生成

题目:给出N(2~9)个数字,一数尾和另一数头相同可连接,求可连成的最大长度。
数据范围:每数2~6位,每位1~4。
例:123+234=1234  1234+4321=1234321

import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;

public class ConnectNum2 {

static int n;
static int mlen;
static boolean[] vis;
static int[][] nums;
static int[][] canc;

public static void main(String[] args) throws FileNotFoundException {
    // TODO Auto-generated method stub
    @SuppressWarnings("resource")
    Scanner sc = new Scanner(System.in);
    sc = new Scanner(new File("files/connectnum"));
    int T = sc.nextInt();
    for (int t = 0; t < T; t++) {
        n = sc.nextInt();
        nums = new int[n][2];
        for (int i = 0; i < n; i++) {
            nums[i][0] = sc.nextInt();
            nums[i][1] = CacuLen(nums[i][0]);
   
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Scratch 是一款非常适合儿童及初学者使用的编程语言,因为它采用非常友好的图形化编程界面。其中比较经典的应用场景就是编写一个成语接龙小游戏。 在 Scratch 中,编写成语接龙小游戏需要实现以下功能: 1. 在程序开始时,随机生成一个起始成语,例如“千军万马”。 2. 当玩家输入一个成语时,程序需要判断该成语是否符合接龙规则:即首字母要与前一个成语的尾字母相同。如果符合规则,则程序输出“接龙成功”,并将该成语变为新的起始成语。如果不符合规则,则输出“接龙失败”提示。 3. 可以设置一个计数器变量,记录玩家接龙成功的次数。 以下是 Scratch 成语接龙代码的简单实现方法: 1. 首先,我们需要设定起始成语和计数器变量。在 Scratch 中,可以使用“变量”和“随机数”模块来完成。 2. 在 Scratch 编辑界面左下方的“变量”区域中,新建一个计数器变量,命名为“接龙成功次数”,并将其初始值设置为 0。 3. 在 Scratch 编辑界面左上方的“块”区域中,找到“随机数”模块,将其拖拽到编程区域,以产生一个随机数来设定起始成语。例如我们可以用“当这个项目启动时”模块,并选中“随机整数(1到10)”来随机生成一个数字,并用“当x到y时”模块判断最后取到哪个数字,再用“列表”模块把一些指定的成语写在里面作为备选范围。 4. 接下来,我们需要添加一个输入框,用来让玩家输入成语。在 Scratch 编辑界面左上方的“块”区域中,找到“输入”模块,并拖拽到编程区域中。 5. 在输入模块下方新增一个判断模块,用于判断玩家输入的成语是否符合接龙规则。这里可以使用“重复直到”模块,直到玩家输入了符合规则的成语为止。例如我们需要用“如果”的判断模块来编写,比如用“如果XXX等于YYY”这样的语法判断是否接龙成功或者失败,并在输入正确时更新起始成语,并将计数器变量加 1,提示玩家接龙成功。否则提示接龙失败。 6. 最后,我们需要将计数器变量和接龙结果输出到屏幕上。在 Scratch 编辑界面左上方的“块”区域中,找到“显示”模块,并将其拖拽到编程区域中,可在 “显示打印”下找到“变量名字”。 上述方法只是一个简单的 Scratch 成语接龙代码实现方法,可以对其进行更为丰富的拓展和完善。通过 Scratch 编程,我们可以把玩成语接龙游戏的过程变成更加有趣的程序设计过程,体验到编程的乐趣和技能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值