第十四届蓝桥杯 三十天刷题 第十四天

📢 📢 📢 大家好呀,我又来了,今天一整天都感觉困困的,可能昨晚睡眠不太好吧,早早就从图书馆回来了,来看今天的题目吧。


  1. 🍡🍡🍡组队🍡🍡🍡

📋问题描述

❓思路分享

这道题目就是口算题目了自己加一下就得出答案了,要注意的是,一个运动员不能打多个位置,因为他不会分身。

System.out.println(490);


  1. ⭐⭐⭐不同子串⭐⭐⭐

⭐问题描述

❓思路分享

两个要点:

一个i指针,一个j指针,i在前j在后,i从0开始,j从i+1开始,这样两个指针就“圈”出了字符串的所有子串,将这些子串全部放到Set里面。

Set自带去重属性,返回Set的长度就是不同子串的个数啦

📗参考代码

import java.util.HashSet;
import java.util.Set;

/**
 * @ClassName 不同子串
 * @Author @浅夜
 * @Date 2023/3/17 21:25
 * @Version 1.0
 */

public class 不同子串 {
    public static void main(String[] args) {
        String s = "0100110001010001";
        int n = s.length();
        Set<String> set = new HashSet<>();
        for(int i = 0; i < n; i++){
            for(int j = i+1; j <= n;j++){
                set.add(s.substring(i,j));
            }
        }
        System.out.println(set.size());
    }
}


  1. 🍚🍚🍚等差数列🍚🍚🍚

📋问题描述

❓思路分享

🍚这道题目最终要求的是等差数列的项数,那么项数怎么算呢:

🍚而且求的是最短的项数,要最短,最大项肯定就是给定数列的最大值啦,我们还不知道的就只剩公差了,公差怎么计算呢?

🍚我们只需要将数列排序,将相邻元素的差值维护成一个数组,这个新的数组的最大公约数就是等差数列的公差啦。

📗参考代码

import java.util.Arrays;
import java.util.Scanner;

/**
 * @ClassName 等差数列
 * @Author @浅夜
 * @Date 2023/3/17 21:35
 * @Version 1.0
 */

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int[] a = new int[n];
        for (int i = 0; i < n; i++) {
            a[i] = sc.nextInt();
        }
        Arrays.sort(a);
        int d = a[1] - a[0];
        for (int i = 2; i < n; i++) {
            d = gcd(d, a[i] - a[i - 1]);
        }
        if (d == 0) System.out.println(n);
        else System.out.println((a[n - 1] - a[0]) / d + 1);
    }

    static int gcd(int a, int b) {
        return b == 0 ? a : gcd(b, a % b);
    }
}


  1. 🍝🍝🍝波动数列🍝🍝🍝

📋问题描述

这道题不会,看了怂佬的代码还是不会😭


📢📢📢今天有点水了,有的题目感觉很简单,有的题目直接看答案都不会做,还是知识面太窄了,刷题刷题😠

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值