#中国电信##校招笔试#
非计算机专业,考计算机类的卷子。行测挺简单;专业知识跟编程我觉得难,因为我不是计算机专业的。专业知识有考机器学习,也有考计科的东西;编程第一题简单,第二题超时20%通过,第三题什么判断括号不会。接着学习吧,顺便把自己编程第二题的错误答案发一下抛砖引玉。

import sys

CHAR_MAP = {key: value for value, key in enumerate([
    "a", "b", "c", "d", "e", "f", "g", "h", 
    "i", "j", "k", "l", "m", "n", "o", "p",
    "q", "r", "s", "t", "u", "v", "w", "x",
    "y", "z"
], 1)}
CHAR_ARR = [(c_1, c_2, c_3) for c_1 in CHAR_MAP.keys() for c_2 in CHAR_MAP.keys() for c_3 in CHAR_MAP.keys()]

condition_1 = lambda v_1, v_2, v_3, n: v_1 + v_2 + v_3 == n
condition_2 = lambda v_1, v_2, v_3, D: abs(v_1 - v_2) in D and abs(v_2 - v_3) in D

def check(n: int, D: list[int]):
    result: str = None
    
    result_arr = []
    for c_1, c_2, c_3 in CHAR_ARR:
        v_1, v_2, v_3 = CHAR_MAP[c_1], CHAR_MAP[c_2], CHAR_MAP[c_3]
        if condition_1(v_1, v_2, v_3, n) and condition_2(v_1, v_2, v_3, D):
            result_arr.append((c_1, c_2, c_3))

    if len(result_arr) == 0:
        result = "NO"
    else:
        result_tup = min(result_arr, key=lambda tup: tup[0] + tup[1] + tup[2])
        result = result_tup[0] + result_tup[1] + result_tup[2]
    
    return result

if __name__ == "__main__":
    data_group_num = int(sys.stdin.readline())
    for _ in range(data_group_num):
        a = sys.stdin.readline().split()
        n, k = int(a[0]), int(a[1])
        D = list(map(lambda s: int(s), sys.stdin.readline().split()))
        print(check(n, D))
全部评论
python Python 3.13.7 (main, Aug 15 2025, 12:34:02) [GCC 15.2.1 20250813] on linux Type "help", "copyright", "credits" or "license" for more information. >>> ord('a') 97 >>> chr(97) 'a' 不需要CHAR_MAP这种东西。。 每次循环我觉得可以只去循环符合间隔的 而不是全部循环再筛选间隔 (你这样做 对于前两位已经不符合的 还是会把第三位跑完)
点赞 回复 分享
发布于 09-27 11:38 浙江

相关推荐

09-11 17:15
门头沟学院 Java
点赞 评论 收藏
分享
09-25 21:25
已编辑
苏州大学 算法工程师
26秋招感想秋招也是从金九银十顺顺利利的变成了金八银九,部分大厂7月中就开始正式批秋招,大部队也是在8月初开始了网申,本人从七月份才开始全身心投入到秋招中,此前几乎没有任何积累,其中也是崩溃了无数次,也包含多次晚上偷偷抹眼泪,秋招实习科研三手抓每天也是9 1 7。bg双2也只是达到了简历筛的门坎,在横向对比中没有任何优势,甚至说是debuff。然后实习也只是小厂实习,领域也不是很垂直,科研方向更是依托,属于是debuff拉满。在这个前提下也是给自己压力拉满狠狠沉淀,最后在崩溃中迎来了曙光。九月初获得了虾皮的意向,前几天小鹏也给了意向,然后刚刚把一个阿里系的n BU面完hr面,推进得很快,并且已经开始谈意向后的实习时间,感觉等云栖大会后等HR忙完也能开出来。秋招应该就到此为止了,在小红书上看面经的时候也经常能刷到大家的焦虑贴,这种心情我完全懂,我也是从这个阶段过来的,总结下来面试分两种情况,一种是你对口并且技术面的很到位,这种会很快给你安排二面和三面,这种通过概率最大,如果一面反问环节发现业务并不是很对口,那就在面试的过程中表现出你的学习能力以及忠诚度,如果面试官不是很mean并且对你感觉良好的话大概也能在一周左右时间给你排一个面试,好好把握,二面和三面的话感觉是必须把故事讲的引人入胜,体现自己解决问题的能力(但实习生能解决个蛋的问题)。如果顺利走到HR面,那后续也不是求职者主观能动性能影响的了,就交给运气吧,排序挂的因素太多了,部门hc不够,是否有关系户,是否有比你能力更强且学历更好的,或者+2单纯对你没记忆点把你忘了,可能性太多了。虽然金八银九,据我了解很多大佬确实在集邮,一个人拿七八个大厂offer的有很多,虽然意向一般都是超发的,但总归会有零零散散的补录,坚持下去,我认为就算零基础all in沉淀也能至少在就职上有一定的竞争力,后续还有春招,咬牙坚持不摆烂,一定能找到自己满意的工作的更新:阿里系已意向,秋招offer,且已约实习时间
讨厌吃香菜的修勾上岸...:本科,一直以为金九银十,八月提前批;觉得八月提前批和自己关系不大,都是双9双2的在投,八月自己重点还在实习,觉得九月开始投,但真到了九月发现好多岗位已经招满了,官网投的简历甚至都一直是未筛选的状态,很后悔,感觉这样自己把自己害了,害怕秋招没有拿到合适的offer
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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