2024年2月CCF-全国精英算法大赛题目

第一次参加这种比赛,虽然是c类赛事,但是是ccf主办的,难度还是有点的,主要是前面签到题主要是思想,后面的题目难度太高,身为力扣只刷了一百多道题目的我解决不了,这几道我只做了B,C题,E题超时了,这些题目的时间限制实在是太高了,这次只能是来学习学习了。顺便附上一下自己的代码,有点丑勿喷,希望有大神能出个题解,感谢

A题:

B题:

复制代码
if __name__ in '__main__':
    Input = input()
    n,m = int(Input.split(' ')[0]),int(Input.split(' ')[1])
    MIN = min(n,m)
    MAX = max(n,m)
    first_x = MIN
    first_y = MIN
    if n == m:
        k = 1
    else:
        k = 2 if n<m else 3
    for i in range(2):
        if k == 0:
            distance = min(n-first_x,m-first_y)
            first_x += distance
            first_y += distance
        elif k == 1:
            distance = min(first_x,first_y)
            first_x -= distance
            first_y -= distance
        elif k == 2:
            distance = min(first_x,m-first_y)
            first_x -= distance
            first_y += distance
        elif k == 3:
            distance = min(n-first_x,first_y)
            first_x += distance
            first_y -= distance
        flag = 0
        if first_x == 0 and first_y == 0:
            k = 0
            flag = 1
        elif first_x == 0 and first_y == m:
            k = 3
            flag = 1
        elif first_x == n and first_y == 0:
            k = 2
            flag = 1
        elif first_x == n and first_y == m:
            k = 1
            flag = 1
        if flag == 0:
            if k == 0:
                if first_y == m:
                    k = 3
                elif first_x == n:
                    k = 2
            elif k == 1:
                if first_x == 0:
                    k = 3
                elif first_y == 0:
                    k = 2
            elif k == 2:
                if first_x == 0:
                    k = 0
                elif first_y == m:
                    k = 1
            elif k == 3:
                if first_y == 0:
                    k = 0
                elif first_x == n:
                    k = 1
    print(first_x,first_y)

C题:

复制代码
if __name__ in '__main__':
    Input = input()
    n,m = int(Input.split(' ')[0]),int(Input.split(' ')[1])
    n += 1
    top = 1
    while((n ** top) <= m):
        top += 1
    top -= 1
    temp = top
    nums = []
    while(top > 0):
        num = m // (n**top)
        m -= num * (n**top)
        nums.append(num)
        top -= 1
    
    if m > 0:
        nums.append(m)
    
    res = ''
    for i, snum in enumerate(nums):
        if snum == 0:
            temp -= 1
            continue
        
        if temp > 1 and snum > 1:
            res += str(snum) + 'x^' + str(temp) + '+'
        elif temp > 1 and snum == 1:
            res += 'x^' + str(temp) + '+'
        elif temp == 1 and snum > 1:
            res += str(snum) + 'x+'
        elif temp == 1 and snum == 1:
            res += 'x+'
        else:
            res += str(snum)
        
        temp -= 1
    
    print(res)

D题:

E题:

复制代码
import math
def check(num):
    if num == 2 or num == 3:
        return True
    end = num ** (1/2)
    for i in range(2,int(end)+1):
        if num % i == 0:
            return False
    if num == 1:
        return False
    return True
if __name__ in '__main__':
    n = int(input())
    res = 0
    for i in range(2,n):
        if check(i):
            if check(n-i) == False:
                if n-i != 1:
                    res += 2
                else:
                    res += 1
                end = n-i
                start = 2
                while(start < end):
                    if (n-i) % start == 0:
                        res += 2
                        end /= start
                    start += 1
    print(res)

F题:

G题:

H题:

I题:

希望这篇博客对你有帮助,希望有大神出一下题解!!!!

相关推荐
Coovally AI模型快速验证36 分钟前
当视觉语言模型接收到相互矛盾的信息时,它会相信哪个信号?
人工智能·深度学习·算法·机器学习·目标跟踪·语言模型
电院工程师1 小时前
SIMON64/128算法Verilog流水线实现(附Python实现)
python·嵌入式硬件·算法·密码学
轮到我狗叫了1 小时前
力扣.84柱状图中最大矩形 力扣.134加油站牛客.abb(hard 动态规划+哈希表)牛客.哈夫曼编码
算法·leetcode·职场和发展
丛雨要玩游戏1 小时前
字符函数和字符串函数
c语言·开发语言·算法
八个程序员2 小时前
自定义函数(C++)
开发语言·c++·算法
ad钙奶长高高2 小时前
【C语言】初始C语言
c语言·开发语言·算法
罗西的思考2 小时前
【Agent】 ACE(Agentic Context Engineering)源码阅读笔记---(3)关键创新
人工智能·算法
报错小能手3 小时前
C++笔记(面向对象)静态联编和动态联编
开发语言·c++·算法
WBluuue3 小时前
AtCoder Beginner Contest 430(ABCDEF)
c++·算法
小肖爱笑不爱笑3 小时前
2025/11/5 IO流(字节流、字符流、字节缓冲流、字符缓冲流) 计算机存储规则(ASCII、GBK、Unicode)
java·开发语言·算法