2024.7.13刷题记录-牛客小白月赛98(未完)

目录

一、A-骰子魔术_牛客小白月赛98 (nowcoder.com)

1.模拟

2.简洁写法

二、B-最少剩几个?_牛客小白月赛98 (nowcoder.com)

贪心-数学

三、C-两个函数_牛客小白月赛98 (nowcoder.com)

1.模拟

2.逆元


一、A-骰子魔术_牛客小白月赛98 (nowcoder.com)

1.模拟

python 复制代码
R = lambda: map(int, input().split())
n, tar = R()
nums = list(R())
flag = 0
for x in nums:
    if x == tar:
        flag = 1
print('YES' if flag else 'NO')

2.简洁写法

参考他人代码(代码查看 (nowcoder.com)

python 复制代码
print(input().split()[1] in input().split() and 'YES' or 'NO')

二、B-最少剩几个?_牛客小白月赛98 (nowcoder.com)

贪心-数学

偶数加奇数为奇数,奇数乘奇数为奇数,优先选择加法,取决于奇数的个数。分为奇数多和偶数多两种情况。奇数多,则选择完加法后剩余 2 * cnt - n 个奇数,两两配对(乘法)则取余;当偶数多时,使用加法消耗完所有奇数偶数对即可,剩余 n - 2 * cnt。而两者一正一负(或0),取最大值即可。

python 复制代码
n = int(input())
nums = list(map(int, input().split()))
odd_cnt = 0
for x in nums:
    if x & 1: odd_cnt += 1
print(max(n - 2 * odd_cnt, (2 * odd_cnt - n) % 2))

三、C-两个函数_牛客小白月赛98 (nowcoder.com)

1.模拟

python无精度影响

python 复制代码
mod = 998244353
def f(a, x):
    if x == 1:
        return a * x % mod
    else:
        return a * a * x * (x - 1) // 2 % mod
t = int(input())
for _ in range(t):
    a, x = map(int, input().split())
    print(f(a, x))

2.逆元

python 复制代码
mod = 998244353
def f(a, x):
    if x == 1:
        return a % mod * x % mod
    else:
        return a % mod * a % mod * x % mod * (x - 1) % mod * qmi(2, mod - 2) % mod
    
def qmi(n, k):
    ans = 1
    while k > 0:
        if k & 1:
            ans = ans * n % mod
        n = n * n % mod
        k >>= 1
    return ans

t = int(input())
for _ in range(t):
    a, x = map(int, input().split())
    print(f(a, x))

(未完待续)

相关推荐
LCG米几秒前
嵌入式Python开发:MicroPython在物联网硬件上的实战应用案例
python·单片机·物联网
nvd112 分钟前
SQLAlchemy 2.0 类型注解指南:`Mapped` 与 `mapped_column`
python
让学习成为一种生活方式4 分钟前
AGAT v1.6.0 安装与使用--生信工具72
人工智能·python·机器学习
南山星火4 分钟前
人工智能“学习”范式大全(24种)
人工智能·学习
小陈phd6 分钟前
Python MCP 工具开发入门:Server、Client 和 LLM 集成
开发语言·python·github
ShenLiang20259 分钟前
识别SQL里的列名
大数据·人工智能·python
jijkck10 分钟前
python库--pyautogui————windows模拟鼠标键盘、图像自动匹配、按钮弹窗
python·windows 10
L***一14 分钟前
数字经济背景下前端开发者的能力认证体系研究
学习
程芯带你刷C语言简单算法题15 分钟前
Day39~实现一个算法确定将一个二进制整数翻转为另一个二进制整数,需要翻转的位数
c语言·开发语言·学习·算法·c
2501_9444522319 分钟前
外观设置 Cordova 与 OpenHarmony 混合开发实战
python