网站首页 > 技术文章 正文
def solve():
import sys
while True:
# 读取第一行
line1 = sys.stdin.readline()
if not line1: # 检查是否到达文件末尾
break
n, m = map(int, line1.strip().split())
# 读取第二行
line2 = sys.stdin.readline()
a = list(map(int, line2.strip().split()))
# 检查是否存在满足条件的子数组
found = False
prefix = 0
mod_map = {0: -1} # 初始状态,前缀和为0的位置为-1
for i in range(n):
prefix = (prefix + a[i]) % m
if prefix in mod_map:
found = True
break
mod_map[prefix] = i
print(1 if found else 0)
solve()
方法思路
- 前缀和与模运算:利用前缀和数组来快速计算任意连续子数组的和。同时,利用模运算的性质来优化判断过程。
- 哈希表记录模值:维护一个哈希表来记录前缀和模m的值及其出现的位置。如果在遍历过程中发现相同的模值再次出现,说明存在满足条件的子数组。
猜你喜欢
- 2025-05-08 Python注释(多行注释和单行注释)用法详解
- 2025-05-08 Python小案例65- 猜数字游戏(python编程简单的猜数字游戏)
- 2025-05-08 python自学者的分享:键盘输入、列表、元组、多维容器
- 2025-05-08 Python 数字和转换(python 转换成数字)
- 2025-05-08 编写一个自动生成双色球号码的 Python 小脚本
- 2025-05-08 数字、字符串和变量:如何使用python三大基本元素,基础很重要
- 2025-05-08 python经典案例:猜数字游戏(python编程简单的猜数字游戏)
- 2025-05-08 用python写游戏之200行代码写个数字华容道
- 2025-05-08 Python实现数值型与字符型类别变量的独热编码One-hot Encoding
- 2025-05-08 用Python编制生成4位数字字母混合验证码
- 263℃Python短文,Python中的嵌套条件语句(六)
- 262℃python笔记:for循环嵌套。end=""的作用,图形打印
- 261℃PythonNet:实现Python与.Net代码相互调用!
- 255℃Python操作Sqlserver数据库(多库同时异步执行:增删改查)
- 255℃Python实现字符串小写转大写并写入文件
- 113℃原来2025是完美的平方年,一起探索六种平方的算吧
- 94℃Python 和 JavaScript 终于联姻了!PythonMonkey 要火?
- 87℃Ollama v0.4.5-v0.4.7 更新集合:Ollama Python 库改进、新模型支持
- 最近发表
- 标签列表
-
- python中类 (31)
- python 迭代 (34)
- python 小写 (35)
- python怎么输出 (33)
- python 日志 (35)
- python语音 (31)
- python 工程师 (34)
- python3 安装 (31)
- python音乐 (31)
- 安卓 python (32)
- python 小游戏 (32)
- python 安卓 (31)
- python聚类 (34)
- python向量 (31)
- python大全 (31)
- python次方 (33)
- python桌面 (32)
- python总结 (34)
- python浏览器 (32)
- python 请求 (32)
- python 前端 (32)
- python验证码 (33)
- python 题目 (32)
- python 文件写 (33)
- python中的用法 (32)