【笔试刷题】电信-2025.10.25-改编真题

✅ 秋招备战指南 ✅

💡 学习建议:

  • 先尝试独立解题
  • 对照解析查漏补缺

🧸 题面描述背景等均已深度改编,做法和题目本质基本保持一致。

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

🌸 目前本专栏已经上线180+套真题改编解析,后续会持续更新的

春秋招笔试机考招合集 -> 互联网必备刷题宝典🔗

电信-2025.10.25

题目一:字符类型识别

1️⃣:读取字符后判断 ASCII 值范围

2️⃣:利用字符比较直接判断大小写

难度:简单

这道题目是最基础的字符判断问题,只需要理解 ASCII 编码中大小写字母的范围即可。通过简单的字符比较,可以在 O(1) 时间内完成判断。

题目二:智能温度调控

1️⃣:读取模式字符串和两个整数

2️⃣:根据模式字符串的特征判断取最小值还是最大值

3️⃣:输出对应的结果

难度:简单

这道题目考查基本的条件判断和字符串处理。通过观察 minmax 字符串的特征,可以用一个简单的判断语句完成任务。

题目三:策略卡牌对决

1️⃣:统计对手每种卡牌的出现次数

2️⃣:根据克制关系进行贪心匹配

3️⃣:计算最大获胜回合数

难度:中等

这道题目看似是博弈问题,实际上是一个贪心匹配问题。由于已知对手的所有出牌,只需要统计数量后进行最优匹配即可。关键在于理解每种卡牌只能克制特定类型,因此贪心策略是最优的。

01. 字符类型识别

问题描述

K 小姐正在开发一个智能文档处理系统,系统需要对输入的英文字符进行分类处理。为了测试系统的基础功能,她设计了一个简单的字符识别模块:给定一个英文字母,判断它是大写字母还是小写字母。

如果输入的字母是大写字母,输出 up;如果是小写字母,输出 low

输入格式

输入一行,包含一个英文字母字符(保证是大写字母或小写字母)。

输出格式

如果是大写字母,输出 up;如果是小写字母,输出 low

样例输入

A
a

样例输出

up
low
样例 解释说明
样例1 字符 A 是大写字母,输出 up
样例2 字符 a 是小写字母,输出 low

数据范围

  • 输入保证是一个英文字母字符

题解

这道题非常直接,核心就是判断一个字符是大写还是小写。

解题思路:

在 ASCII 编码中,大写字母 A-Z 的编码范围是 65-90,小写字母 a-z 的编码范围是 97-122。因此大写字母的 ASCII 值都小于小写字母。

具体判断方法有几种:

  1. 直接比较大小:由于 'a' 的 ASCII 值是 97,所有大写字母都小于 'a',可以直接用 c < 'a' 判断是否为大写
  2. 使用库函数:各语言都提供了判断字符类型的函数,如 Python 的 isupper()、C++ 的 isupper()
  3. 范围判断:判断字符是否在 'A'-'Z''a'-'z' 范围内

时间复杂度: ,只需要一次比较操作。

空间复杂度: ,只需要存储一个字符。

参考代码

  • Python
import sys
input = lambda: sys.stdin.readline().strip()

# 读取字符
ch = input()
# 判断并输出:如果字符小于'a'则为大写,否则为小写
print("up" if ch < 'a' else "low")
  • Cpp
#include <iostream>
using namespace std;

int main() {
    char ch;
    cin >> ch;  // 读取字符
    
    // 判断大小写:大写字母ASCII值小于'a'
    if (ch < 'a') {
        cout << "up";
    } else {
        cout << "low";
    }
    
    return 0;
}
  • Java
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        // 读取字符
        char ch = sc.next().charAt(0);
        
        // 判断大小写:大写字母在'A'到'Z'之间
        if (ch >= 'A' && ch <= 'Z') {
            System.out.println("up");
        } else {
            System.out.println("low");
        }
        
        sc.close();
    }
}

02. 智能温度调控

问题描述

小基 正在设计一套智能家居温度调控系统。系统会根据用户设定的模式来调节室内温度。用户可以选择两种工作模式:min 模式会选择两个温度传感器读数中的较低值作为目标温度,max 模式会选择较高值作为目标温度。

现在给定用户选择的模式 (为字符串 minmax),以及两个温度传感器的读数 ,请输出系统应该采用的目标温度值。

输入格式

第一行输入一个长度为 的字符串 ,保证其为 minmax

第二行输入两个整数 )。

输出格式

输出一个整数,表示系统应该采用的目标温度值。

样例输入

min
0 0
max
-1 3

样例输出

0
3
样例 解释说明
样例1 模式为 min,两个传感器读数都是 ,选择最小值
样例2 模式为 max,两个传感器读数分别为 ,选择最大值

数据范围

  • min, max

题解

这道题的关键是根据模式字符串判断要取最小值还是最大值。

解题思路:

最直接的方法是判断字符串 min 还是 max,然后分别调用对应的函数。但有一个更巧妙的方法:观察这两个字符串的第二个字符,min 的第二个字符是 i,而 max 的第二个字符是 a。因此可以通过判断 s[1] 是否等于 i 来区分两种模式。

具体实现:

  1. 读取模式字符串 和两个整数
  2. 判断 是否为 'i'
    • 如果是,说明模式为 min,输出
    • 否则,说明模式为 max,输出

时间复杂度: ,只需要常数次比较操作。

空间复杂度: ,只需要存储字符串和两个整数。

参考代码

  • Python
import sys
input = lambda: sys.stdin.readline().strip()

# 读取模式和两个温度值
mode = input()
x, y = map(int, input().split())

# 通过模式字符串的第二个字符判断:'i'表示mi

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

互联网刷题笔试宝典 文章被收录于专栏

互联网刷题笔试宝典,这里涵盖了市面上大部分的笔试题合集,希望助大家春秋招一臂之力

全部评论

相关推荐

天门一键开:她的意思是问你有没有论文吧
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务