10.26电xin(已改编)-三语言题解

🍭 大家好这里是 春秋招笔试突围,一起备战大厂笔试

💻 ACM金牌团队🏅️ | 多次AK大厂笔试 | 大厂实习经历

✨ 本系列打算持续跟新 春秋招算法题

👏 感谢大家的订阅➕ 和 喜欢💗 和 手里的小花花🌸

✨ 算法合集传送们 -> 🧷学长刷题笔记

🍒 本专栏已收集 140+ 套题,算法真题 会在第一时间跟新

🍄 题面描述等均已改编,如果和你笔试题看到的题面描述不一样请理解,做法和题目本质基本不变。

🍹 感谢各位朋友们的订阅,你们的支持是我们创作的最大动力 💞

alt

🧸 本套相对于其他来说比较简单,但是十分经典,题目非常适合练手哦

1️⃣ 简单的遍历+模拟

2️⃣ 哈希表/双指针遍历

01.K小姐的好数游戏 评测链接🔗

问题描述

在一个神秘的数字王国中,K小姐正在寻找特别的数字,这些数字被称为“7 好数”。一个数字被认为是“7 好数”,当且仅当它的开头和结尾都是数字 7。为了帮助 K小姐,您需要计算在区间 中有多少个“7 好数”。

输入格式

第一行包含一个正整数 ,表示需要检查的数字范围。

输出格式

输出一个整数,表示在区间 中的“7 好数”的数量。

样例输入

100

样例输出

2

样例解释

样例 解释说明
样例1 在区间 中,只有数字 7 和 77 是“7 好数”。

数据范围

题解

遍历+模拟

在这道题目中,要找出所有的“7 好数”,即那些以数字 7 开头并以数字 7 结尾的正整数。这个问题可以通过简单的遍历来解决。

解法思路

  1. 遍历范围:从 1 到 ,逐个检查每个数字。
  2. 检查条件:对于每个数字,首先将其转换为字符串,然后检查第一个字符和最后一个字符是否都是 '7'。
  3. 计数:如果满足条件,则计数器加一。

时间复杂度为 ,因为我们需要遍历从 1 到 的所有数字。对于给定的最大值 ,这个复杂度是可以接受的。

实现代码

  • Python
def count_seven_good_numbers(n):
    count = 0
    for i in range(1, n + 1):
        s = str(i)
        if s[0] == '7' and s[-1] == '7':
            count += 1
    return count

# 输入处理
n = int(input())
print(count_seven_good_numbers(n))
  • Java
import java.util.Scanner;

public class SevenGoodNumbers {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int n = scanner.nextInt();
        int count = 0;
        
        for (int i = 1; i <= n; i++) {
            String numStr = String.valueOf(i);
            if (numStr.charAt(0) == '7' && numStr.charAt(numStr.length() - 1) == '7') {
                count++;
            }
        }
        
        System.out.println(count);
    }
}
  • Cpp
#include <iostream>
#include <string>

using namespace std;

int main() {
    int n;
    cin >> n;
    int count = 0;

    for (int i = 1; i <= n; i++) {
        string numStr = to_string(i);
        if (numStr.front() == '7' && numStr.back() == '7') {
            count++;
        }
    }

    cout << count << endl;
    return 0;
}

02.K小姐的水果摊 评测链接🔗

问题描述

在一个热闹的市场中,K小姐正在统计她的水果摊位上各种水果的销售情况。她希望分析不同区间内,能够被特定数量的水果种类整除的情况。给定一个水果销售数量的序列 ,以及两个整数 ,K小姐想知道有多少个区间 )满足该区间中恰好有 个水果数量能够被 整除。

输入格式

第一行包含 个空格分开的正整数,表示序列 的元素。

第二行包含两个正整数 ,分别表示整除数和需要满足的条件。

输出格式

返回满足条件的区间总数。

样例输入

1 2 3 4
2 1

样例输出

6

样例解释

样例 解释说明
样例1 总共有 6 个区间,满足恰好有 1 个数被 2 整除:即 [1,2], [1,3], [2,2], [2,3], [3,4], [4,4]。

数据范围

题解

哈希表 / 双指针

这道题目要求我们找到所有满足特定条件的区间。具体来说,需要计算在给定的水果销售数量序列中,有多少个区间内恰好有 个数能够被指定的整数 整除。

解题思路

剩余60%内容,订阅专栏后可继续查看/也可单篇购买

学长刷题笔记 文章被收录于专栏

这里收集了超全的刷题笔记,欢迎大家的订阅,会持续跟新的

全部评论

相关推荐

1 3 评论
分享
牛客网
牛客企业服务